Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 1285 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Prezados,

O componente TACBrEnterTab não está assumindo o comportamento padrão para a tecla [Enter] (quando deveria) se o controle ativo é TButtonControl em um form criado no TTDINotebook.

Talvez o problema esteja aqui:

A Linha 172 de TACBrEnterTab.pas está assim:

 

   try
     if not (AForm is TForm) then
       exit ;  

 

Por enquanto estou desativando o EnterAsTab na entrada e ativando na saída do botão para contornar.

 

Postado

Simples Daniel.

Coloque um ACBrEnterTab no Form1 do Demo ativando o EnterAsTab e execute.  Pressione enter quando o foco estiver no button1 que o cursor irá para o próximo controle não acionando o evento onclick do button.

 

  • Fundadores
Postado

Criei uma simples aplicação em D7, com alguns Edits e Botões... (sem o componente TACBrEnterTab)

E me parece, que o Enter realmente  não aciona o Click em Botões.. Creio que o Delphi deixe isso a cargo da propriedade "Default' de TButton

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Postado
2 horas atrás, Daniel Simoes disse:

Criei uma simples aplicação em D7, com alguns Edits e Botões... (sem o componente TACBrEnterTab)

E me parece, que o Enter realmente  não aciona o Click em Botões.. Creio que o Delphi deixe isso a cargo da propriedade "Default' de TButton

Daniel, eu uso Lazarus. Como te disse anteriormente usei o demo, só esqueci de mencionar que era do Lazarus.

 

  • Fundadores
Postado

Sim, mas o que estou questionando, é se deixar o botão funcionando com ENTER, será uma modificação do funcionamento padrão dele...

Ou seja, normalmente o Botão não é acionado com ENTER ou Tab

Consultor SAC ACBr

Daniel Simões de Almeida
O melhor TEF, é com o Projeto ACBr - Clique e Conheça
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr     Telefone:(15) 2105-0750 WhatsApp(15)99790-2976.

Postado
1 hora atrás, Daniel Simoes disse:

Sim, mas o que estou questionando, é se deixar o botão funcionando com ENTER, será uma modificação do funcionamento padrão dele...

Ou seja, normalmente o Botão não é acionado com ENTER ou Tab

Daniel, talvez eu não tenha me expressado bem ou não coloquei o problema com clareza.

Entendo que qualquer botão, quando recebe o foco, é acionado sim com o [ENTER] . É claro que o [TAB] vai passar para o próximo controle, mas [ENTER] dispara sim o evento OnClick do botão.

Num formulário Modal, se o botão tem a propriedade "Default" setada em TRUE, ele é acionado mesmo sem foco, isso é verdade, mas não é disso que estou falando. O que está ocorrendo é, como disse no início, se tenho um TDINoteBook e um botão no Form, esse botão, mesmo com foco nele, não é acionado pelo [ENTER].

Sugiro que você faça o seguinte:

Abra o exemplo do TDINotebook e execute;
Com o projeto em execução abra um novo Form1;
Vá apertando [TAB] até alcançar o botão "Close Form" e dê [ENTER]. Observe que vai disparar o OnClick dele.

Encerre o programa e volte ao projeto;
Coloque um ACBrEnterTab e configura TabAsEnter = "TRUE";
Repita o procedimento acima e verá que o evento não é disparado com o [ENTER] quando deveria. A idéia do EnterTab é simular o TAB ao pressionar enter, mas se o controle ativo não for um botão.

 

 

 

 

 

  • Este tópico foi criado há 1285 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.