Sair com o ENter

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Sair com o ENter

Mensagem por bencz »

Olá, gostaria de saber, como posso fazer para ir apertando o enter, e ele ir passando de um text-box para o outro..

por exemplo, tenho um form, com 5 text-box, e o usuario vai apertando enter, e vai passando de um text-box para o outro, mesmo se ele estiver vazio... e quando ele chegar no ultimo textbox, ele fecha a dialog, entende ?

Então, como posso fazer isso ?
Agradeço a ajuda.
Alexandre
Imagem
Avatar do usuário
ANDRIL
Usuário Nível 5
Usuário Nível 5
Mensagens: 1297
Registrado em: 06 Jul 2004 00:44
Contato:

Sair com o ENter

Mensagem por ANDRIL »

A resposta esta neste tópico https://pctoledo.org/forum/viewto ... per#p75136 fornecida pelo Leonardo Sygecon.
Ate+
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
Avatar do usuário
bencz
Usuário Nível 4
Usuário Nível 4
Mensagens: 524
Registrado em: 28 Abr 2012 17:36
Contato:

Sair com o ENter

Mensagem por bencz »

obrigado (:
mas, como posso fazer p/ saber, se esta no ultimo text-box, e se estiver, sair do dialog ?
Imagem
Imatech
Usuário Nível 3
Usuário Nível 3
Mensagens: 350
Registrado em: 24 Ago 2010 23:48
Localização: Goiânia-GO

Sair com o ENter

Mensagem por Imatech »

Não seria interessante pelo menos 2 botões ao final dos TxtBox (Confirma e Cancela) ?

Chegou ao botão confirma... Tecla ENTER novamente (Confere se todos os TxtBox foram preenchidos corretamente: Grava)... fim
M., Ronaldo

by: IMATECH

IMATION TECNOLOGIA
Avatar do usuário
Toledo
Administrador
Administrador
Mensagens: 3133
Registrado em: 22 Jul 2003 18:39
Localização: Araçatuba - SP
Contato:

Sair com o ENter

Mensagem por Toledo »

Outra opção é colocar um VALID no último GET:

Código: Selecionar todos

VALID {|| nomedialog:Close() }
No VALID pode se usar uma função para validar os campos, gravar os registros, etc...

Abraços,
Toledo - Clipper On Line
toledo@pctoledo.com.br
Harbour 3.2/MiniGui/HwGui
Faça uma doação para o fórum, clique neste link: http://www.pctoledo.com.br/doacao
nasouza
Usuário Nível 1
Usuário Nível 1
Mensagens: 37
Registrado em: 20 Jul 2009 17:57
Localização: Santa Isabel do Ivai - Pr

Sair com o ENter

Mensagem por nasouza »

estou dentro da dialog, em um browse, como sair apenas teclando o enter.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Sair com o ENter

Mensagem por Itamar M. Lins Jr. »

Ola!
Uma dica, na pasta docs tem um manual em Html, e na internet também.
CLIPPER - to force the Clipper like behavior - the Enter key is used for moving between GET's;
NOEXIT - the Enter key doesn't cause closing of a dialog box.

Código: Selecionar todos

 INIT DIALOG <oWnd>
    	 [ TITLE <cTitle> ] 
    	 [ AT <x>, <y> ] 
    	 [ SIZE <width>, <height> ] 
         [ ICON <ico> ] 
         [ BACKGROUND BITMAP <oBmp> ] 
    	 [ STYLE <nStyle> ] 
    	 [ FONT <oFont> ] 
    	 [ BACKCOLOR <clr> ]
    	 [ CLIPPER ] 
    	 [ NOEXIT ] 
    	 [ NOEXITESC ]
    	 [ NOCLOSABLE ]
    	 [ ON INIT <bInit> ] 
    	 [ ON SIZE <bSize> ] 
    	 [ ON PAINT <bPaint> ] 
    	 [ ON GETFOCUS <bGfocus> ] 
    	 [ ON LOSTFOCUS <bLfocus> ] 
    	 [ ON OTHER MESSAGES <bOther> ] 
    	 [ ON EXIT <bExit> ] 
    	 [ HELPID <nHelpId>> ]

 ACTIVATE DIALOG <oDlg>
             [ NOMODAL ]
             [ MAXIMIZED ]
             [ MINIMIZED ]
             [ CENTER ]
             [ ON ACTIVATE <bInit> ]
Mastigado!

Código: Selecionar todos

INIT Dialog oDlg CLIPPER NOEXIT TITLE cTitulo Font oFont AT 0,0 SIZE 730,420 ;
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

Sair com o ENter

Mensagem por Itamar M. Lins Jr. »

Ola!
Ixi! tem esse detalhe, é um browse.
em um browse,
Vai depender de como está tratando as teclas do browse.
Enter é para pular uma célula para outra do browse (caso ela(cell) não for editável)
E na edição salva, igual o comportamento do tbrowse do clipper.

Código: Selecionar todos

@ <x>,<y> BROWSE <oBrowse>
    	 [ ARRAY ] 
    	 [ DATABASE ] 
    	 [ OF <oWnd> ]; 
    	 [ ID <nId> ] 
    	 [ SIZE <width>, <height> ] 
    	 [ ON INIT <bInit> ] 
    	 [ ON SIZE <bSize> ] 
    	 [ ON PAINT <bDraw> ] 
    	 [ ON CLICK <bClick> ] 
    	 [ ON RIGHTCLICK <bRClick> ] 
    	 [ ON GETFOCUS <bGetFocus> ] 
    	 [ ON LOSTFOCUS <bLostFocus> ] 
    	 [ STYLE <nStyle> ] 
         [ <lNoVScr: NO VSCROLL> ] 
         [ <lNoBord: NO BORDER> ] 
    	 [ FONT <oFont> ] 
         [ APPEND ] 
         [ AUTOEDIT ] 
         [ ON UPDATE <bUpdate> ] 
         [ ON KEYDOWN <bKeyDown> ] 
         [ ON POSCHANGE <bPosChg> ]
         [ MULTISELECT ]
Neste caso pelo "On KeyDown {||fKeyChk()}"
Não sei como está ai seu código, neste caso, pq tem outra opção além dessa que mostrei.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

Sair com o ENter

Mensagem por alxsts »

Olá!

Não sei qual é a tua necessidade mas, parece estranho sair de um browser com enter... teste assim:

Código: Selecionar todos

FUNCTION Teste()

   LOCAL oForm, aArray := {}, oBr

   INIT DIALOG oForm TITLE "Teste" AT 374,216 SIZE 778,425;
        FONT HFont():Add( "Verdana",0,-13,400,,,) CLIPPER  NOEXIT STYLE DS_CENTER + WS_VISIBLE + WS_CAPTION + WS_SYSMENU ICON NIL
   
   @ 006,005 BROWSE oBr ARRAY SIZE 770,400 FONT HFont():Add( '',0,-13,400,,,) AUTOEDIT STYLE WS_TABSTOP+WS_VSCROLL+WS_HSCROLL ;

   oBr:bKeyDown := {|o,oForm| oBr_KeyPress(o, oForm) }

...

RETURN NIL
//---------------------------------------------------------------------------------------------------------------------------------------

STATIC FUNCTION oBr_KeyPress(o, oForm )

   If GetKeyState(VK_RETURN,.F.,.T.) < 0
      oForm:close()
   Endif

RETURN .T.
//---------------------------------------------------------------------------------------------------------------------------------------
[]´s
Alexandre Santos (AlxSts)
Responder