Array
(
)

Tirar Foco x Clique do Mouse em run-time

Macario
   - 31 ago 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.




Citação:
Resultado pesquisa : 0



Guibas
   - 31 ago 2004

o panel aceita foco?

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


Guibas
   - 31 ago 2004

o panel aceita foco?

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


Macario
   - 31 ago 2004

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.


Fórum Vini
   - 31 ago 2004

Olá,
você pode usar esse código:
#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;


Dopi
   - 31 ago 2004

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

E se voce deixar ele como ReadOnly ?


Macario
   - 31 ago 2004

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.