Fabrício Desbessel
Delphiano de coração
Colégio
 Downloads | Mapa do Site | 23 visitantes on-line 


 Login
   
    
 Lembrar de mim
Esqueceu sua senha?

 MENU
 :: Inicial
 :: Currículo
 :: Lições
 :: Contato
 :: Delphi
 :: Publicações
 :: Livros
 :: Lattes
 :: Projetos

 Buscar no site
  

 Ajuda...


 Clube Delphi


 Busca Google

  
 Delphi - Uilizando o Enter ao invés do TAB
Sempre estamos nos atualizando tecnológicamente mas, mesmo assim, às vezes precisamos fazer coisas do passado. Porque digo isso?
É que antigamento, em sistemas DOS utilizávamos a tecla Enter ou Return para avançarmos de campo. Com a chegada do Windows tivemos que utilizar a tecla TAB para trocar de campo. A princípio ninguém gostou mas, analisando melhor, vejo que essa troca tem o objetivo acelerar o trabalho do digitador. Pensem que uma digitação de números, na maioria das vezes envolve somente a mão direita, ficando a esquerda livre. Então porque não trocar de campo usando a mão esquerda e a tecla TAB, diminuíndo assim as tarefas da mão direita?
Creio que por vícios do DOS, sempre teremos que alterar nossos sistemas para alterar o Tab por Enter.
Então para quem quer usar o Enter, siga as instruções abaixo:

1º - No evento OnShow do formulário principal coloque o seguinte código:
      Application.OnMessage := ProcessaMsg;

Esse código deve ser o último, caso você já tenha outros código no mesmo evento (OnShow)

2º - Suba até a seção "private" da unit

3º - Abaixo da palavra "private" coloque a seguinte linha, que irá criar um procedimento:
      procedure ProcessaMsg(var Msg: TMsg; var Handled: Boolean);

4º - Com o cursor do mouse posicionando na linha que você acabou de digitar, pressione
as teclas CTRL+SHIFT+C
Isso montará a estrutura do procedimento.

5º - Copie o código abaixo para o procedimento que você acabou de criar (entre Begin e End;).
  if Msg.message = WM_KEYDOWN then
    if not (Screen.ActiveControl is TCustomMemo) and
       not (Screen.ActiveControl is TButtonControl) then
    begin
      if not (Screen.ActiveControl is TCustomControl) then
      begin
        if Msg.wParam = VK_Down then
           Msg.wParam := VK_Tab;
        if Msg.wParam = VK_UP then
        begin
          Msg.wParam := VK_CLEAR;
          Screen.ActiveForm.Perform(WM_NextDlgCtl,1,0);
        end;
      end;
      if Msg.wParam = VK_Return then
        Msg.wParam := VK_Tab;
    end;

6º Na Cláusula Uses adicione StdCtrls.

É isso. Agora é só compilar e testar.
Ah esse código não tem o problema de emitir som a cada campo que é trocado, como acontece em alguns códigos que a gente encontra por aí.


 
 Edição Atual

Edição Atual


 Aprendizagem

Para você que quer aprender SQL, abaixo tem o link para um Objeto de Aprendizagem (OA) sobre o assunto.

Aprendendo SQL


 Frases
"Quanto mais sei, mais sei que nada sei"
Sócrates

 Arquivo
 :: Acessando o Firebird através do Excel  
 :: Dar um pouco de amor incentiva muito as outras pessoas a fazerem o mesmo 
 :: Super produção da minha KX250F 
 :: Retorno a FAHOR/CFJL 
 :: O que você quer ser quando crescer? 
 :: Como a vida ensina 
 :: Delphi Conference 2010 - Uma certa indignação... 
 :: RadPHP XE o novo Delphi for PHP 
 :: Delphi - Tratando erros de banco de dados 
 :: Delphi - Tratando erros de sistemas 
 :: Delphi - Uilizando o Enter ao invés do TAB em projetos CLX 
 :: Delphi 2009 
 :: Crie uma loja virtual com Delphi for PHP - Parte XII 
 :: Crie uma loja virtual com Delphi for PHP - Parte XI 
 :: Crie uma loja virtual com Delphi for PHP - Parte X 
 :: Delphi - Como fazer o enter disparar um Click de um botão 
 :: Crie uma loja virtual com Delphi for PHP - Parte IX 
 :: Crie uma loja virtual com Delphi for PHP - Parte VIII 
 :: Crie uma loja virtual com Delphi for PHP - Parte VII 
 :: Delphi - Validando CNPJ 
 :: Crie uma loja virtual com Delphi for PHP - Parte VI 
 :: Crie uma loja virtual com Delphi for PHP - Parte V 
 :: Crie uma loja virtual com Delphi for PHP - Parte IV 
 :: Crie uma loja virtual com Delphi for PHP - Parte III 
 :: Encontro de Craques 
 :: Crie uma loja virtual com Delphi for PHP - Parte II 
 :: Você é Hands on? 
 :: Crie uma loja virtual com Delphi for PHP - Parte I 
 :: Autenticação no Delphi for PHP - Parte IV 
 :: Autenticação no Delphi for PHP - Parte III 
 :: Autenticação no Delphi for PHP - Parte II 
 :: Autenticação no Delphi for PHP - Parte I 
 :: Cá entre nós... – Horizontina e os horizontinenses 
 :: Window (Janelas) no Delphi For PHP 
 :: Nada substitui o Talento 
 :: MainMenu no Delphi For PHP 
 :: Aplicações MySQL com Delphi for PHP - Parte VII 
 :: Aplicações MySQL com Delphi for PHP - Parte VI 
 :: Delphi - Conexões dinâmicas ao Banco de Dados 
 :: Mundo Corporativo - A história da formiga 
 :: Aplicações MySQL com Delphi for PHP - Parte V 
 :: Impedir os cadastros em duplicidade 
 :: Aplicações MySQL com Delphi for PHP - Parte IV 
 :: Aplicações MySQL com Delphi for PHP - Parte III 
 :: Aplicações MySQL com Delphi for PHP - Parte II 
 :: Aplicações MySQL com Delphi for PHP - Parte I 
 :: Gráficos no Delphi II 
 :: Gráficos no Delphi I 
 :: Delphi For PHP 
 :: Delphi - Relatórios com Quick Report - Parte VI 
 :: Delphi - Relatórios com Quick Report - Parte V 
 :: Delphi Tour 
 :: Delphi - Relatórios com Quick Report - Parte IV 
 :: Delphi - Relatórios com Quick Report - Parte III 
 :: Delphi - CodeGear anuncia Delphi 2007 
 :: Delphi - CodeGear anuncia Delphi for PHP 
 :: Delphi - Relatórios com Quick Report - Parte II 
 :: Delphi - Relatórios com Quick Report - Parte I 
 :: Delphi - Mestre/Detail com dbExpress 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte V 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte IV 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte III 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte II 
 :: Delphi - Iniciando a utilização da Tecnologia Ajax - Parte I 
 :: Delphi - Wizards para criação de banco de dados no Delphi 7 
 :: Delphi - Trabalhando com o Database Desktop 
 :: Delphi - Validando CPF 
 :: Delphi - Colocando Backup e Restauração em Sistemas com Firebird ou Interbase 
 :: Delphi - Artigo publicado na Revista ClubeDelphi 
 :: Palestrante na Borcon 
 :: Calculando o "Custo Brasil" em um PC 
 :: Delphi - Aplicações Web com Webbroker - Parte V 
 :: Políticos Honestos 
 :: Delphi - Aplicações Web com Webbroker - Parte IV 
 :: Delphi - Artigo publicado na revista Clube Delphi 
 :: Delphi - Aplicações Web com Webbroker - Parte III 
 :: Delphi - Artigo publicado na revista Clube Delphi 
 :: Delphi - Aplicações Web com Webbroker - Parte II 
 :: Delphi - Aplicações Web com Webbroker - Parte I 
 :: Delphi - Instalando o QuickReport no Delphi 7 
 :: Delphi - DLL's com formulários 
 :: Delphi - DLLs! Porque e Como utilizar 
 :: Delphi - Montando telas de cadastro dinamicamente 
 :: Delphi - Executando vídeo no Delphi através do ActiveX do Windows Media Player 
 :: Delphi - Listando arquivos de um diretório 
 :: Delphi - Como criar arquivos de Help com softwares gratuitos 
 :: Delphi - Consumindo RSS de notícias em .Net 
 :: Delphi - Criando uma instalação profissional para sua aplicação utilizando o InstallShield  
 :: Comissão Editorial da Revista Clube Delphi 
 :: Lançamento do Sistema SAS 
 :: Colunista ClubeDelphi 
 :: Delphi - Não perder dados com uma queda de energia 
 :: Delphi - Colocando a opção de configurar impressão 
 :: Delphi - Traduzindo as mensagens de erro 
 :: Exemplo de Persistência 
 :: Delphi - Colocando Backup em sistemas com tabelas Paradox 
 :: Delphi - Uilizando o Enter ao invés do TAB 
 :: Delphi - Deixando seus sistemas muito mais bonitos 
 :: Delphi - Impedir o fechamento da tela com ALT+F4 
 :: Delphi 2005 
 :: Delphi - Tela de Consultas Personalizáveis 
 ::  Delphi - Gerar planilhas do excel através de uma consulta (Query) 
 :: Delphi - Telas de Apresentação 
 :: Delphi - Filtrando Tabelas 

Fabrício Desbessel - É permitida a reprodução de qualquer material desse site desde que seja citada a fonte.