Tirar Foco x Clique do Mouse em run-time

31/08/2004

Olá programadores, bom dia.

Estou criando um objeto memo em rum-time e setando o foco ao mesmo.

Mas preciso que quando clicar no Panel onde o mesmo foi inserido ele perca o foco. Sem ficar com o texto selecionado e sem o cursor do intermitente.

Agradeço as dicas ou soluções.



[color=red:8f533f429c]Resultado pesquisa : 0[/color:8f533f429c]



Macario

Respostas

31/08/2004

Guibas

o panel aceita foco?

tem que ser um componente que aceite foco. ai é so setar o foco nele.


Responder Citar

31/08/2004

Guibas

o panel aceita foco?

tem que ser um componente que aceite foco. ai é so setar o foco nele.


Responder Citar

31/08/2004

Macario

Sim TPanel aceita.

Mas nao quero jogar o foco em nenhum outro componente, e sim apenas tirar o foco do Memo e tambem a seleção do texto e o ponteiro do cursor.

Tentei DefocusControl mas nao funcionou.


Responder Citar

31/08/2004

Fórum Vini

Olá,
você pode usar esse código:
procedure TForm1.Panel1Click(Sender: TObject);
begin
  Memo1.HideSelection:= True;  //Esconde a seleção quando o memo não tiver o foco
  Form1.FocusControl(Panel1);  //Seta o foco no Panel
end;


Espero ter ajudado,
Vinicius;


Responder Citar

31/08/2004

Dopi

Pelo jeito esse memo não será ´editável´....

E se voce deixar ele como ReadOnly ?


Responder Citar

31/08/2004

Macario

Dopi sim eu vou editar o Tmemo.

Pessoal valeu pela ajuda.

Consegui resolver com a dica do Vini

Self.FocusControl(PanelEdita);

sem precisar ativar HideSelection.


Responder Citar