seta para cima no get

Projeto HwGui - Biblioteca visual para Harbour/xHarbour

Moderador: Moderadores

paiva_dbdc
Usuário Nível 3
Usuário Nível 3
Mensagens: 342
Registrado em: 12 Nov 2012 09:58
Localização: uberlandia mg

seta para cima no get

Mensagem por paiva_dbdc »

boa

no xhb se um campo é ou se chama uma função para criticar...

se deixado em branco da erro , se avise e retorna ao campo para informar...

++++ se clicar na seta para cima ele IGNORA a critica e volta para o GET anterior.

TERIA jeito de fazer isso na HWGUI ?
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

seta para cima no get

Mensagem por Itamar M. Lins Jr. »

Olá!
Basta vc na função de validação usar VK_UP, empty(), etc...

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
paiva_dbdc
Usuário Nível 3
Usuário Nível 3
Mensagens: 342
Registrado em: 12 Nov 2012 09:58
Localização: uberlandia mg

seta para cima no get

Mensagem por paiva_dbdc »

Itamar, não entendi rs

Normalmente uso uma função para validar e dentro dela tenho....

ex:

função


case dado == [TBAIRRO]

* como ficaria aqui ?
*if vk_up
* return(.t.)
*endif


if empty(var)
pmsg = "CRACLIE - Este Campo deve conter Dados."
ftempo(5)
return(.f.)
endif

return(.t.)

case dado == [TCIDADE]

este e´só um exemplo ai se o campo corrente for o TBAIRRO Não sai enquanto Não informar alguma coisa
no xhb a setinha para cima Ignora a CRITICA e volta para o get anterior
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

seta para cima no get

Mensagem por Itamar M. Lins Jr. »

Olá!
A Hwgui no xHb é a mesma coisa no Harbour.
Coloca um exemplo, para podermos analisar.

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

seta para cima no get

Mensagem por Itamar M. Lins Jr. »

Olá!
Agora se está falando de modo console, o GET é diferente do GET visual.

Código: Selecionar todos

xcommand @ <x>,<y> EDITBOX [ <oEdit> CAPTION ] <caption> ;
            [ OF <oWnd> ]              ;
            [ ID <nId> ]               ;
            [ SIZE <width>, <height> ] ;
            [ COLOR <color> ]          ;
            [ BACKCOLOR <bcolor> ]     ;
            [ ON INIT <bInit> ]        ;
            [ ON SIZE <bSize> ]        ;
            [ ON GETFOCUS <bGfocus> ]  ;
            [ ON LOSTFOCUS <bLfocus> ] ;
            [ ON KEYDOWN <bKeyDown>]   ;
            [ ON CHANGE <bChange> ]    ;
            [ STYLE <nStyle> ]         ;
            [<lnoborder: NOBORDER>]    ;
            [<lPassword: PASSWORD>]    ;
            [ FONT <oFont> ]           ;
            [ TOOLTIP <ctoolt> ]       ;

Código: Selecionar todos

#xcommand @ <x>,<y> GET [ <oEdit> VAR ]  <vari>  ;
            [ OF <oWnd> ]              ;
            [ ID <nId> ]               ;
            [ SIZE <width>, <height> ] ;
            [ COLOR <color> ]          ;
            [ BACKCOLOR <bcolor> ]     ;
            [ PICTURE <cPicture> ]     ;
            [ WHEN  <bGfocus> ]        ;
            [ VALID <bLfocus> ]        ;
            [ ON KEYDOWN <bKeyDown>]   ;
            [ ON CHANGE <bChange> ]    ;
            [ ON INIT <bInit> ]        ;
            [ ON SIZE <bSize> ]        ;
            [<lPassword: PASSWORD>]    ;
            [ MAXLENGTH <nMaxLength> ] ;
            [ STYLE <nStyle> ]         ;
            [<lnoborder: NOBORDER>]    ;
            [ FONT <oFont> ]           ;
            [ TOOLTIP <ctoolt> ]       ;
Trata do FOCO(get focus), da perda de foco(lost focus), tecla pressionada.(on KeyDown)
Eu mesmo tenho usado apenas VALID.
Dá uma olhada no tal hwg_KEYB_EVENT(),

Código: Selecionar todos

If hwg_Getkeystate(VK_UP) < 0 //Teclou seta pra cima ...
Agora, ficar tratando do teclado rigidamente, não é aconselhável, geralmente o pessoal deixa tudo livre e trata quando for gravar os dados.

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

seta para cima no get

Mensagem por Itamar M. Lins Jr. »

Olá!
se deixado em branco da erro , se avise e retorna ao campo para informar...
Pq isso da erro em modo visual.
Vc sai do GET com o teclado e com mouse (aponta o mouse e clica, em outros controles/Gets/Relógio/Barrra Iniciar/Programa) ou via outro programa, que pede o foco.

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
paiva_dbdc
Usuário Nível 3
Usuário Nível 3
Mensagens: 342
Registrado em: 12 Nov 2012 09:58
Localização: uberlandia mg

seta para cima no get

Mensagem por paiva_dbdc »

itamar

xLINK: error: Unresolved external symbol '_HB_FUN_HWG_GETKEYSTATE'.

tem que anexar algum ch ?

@ 616,84 GET oBairro VAR tBairro SIZE 187,24 PICTURE '@k!' MAXLENGTH 20 STYLE IF(mp1 != 2 .AND. mp1 != 3, WS_DISABLED, 0) VALID {|| craclie_co(@tbairro ,17,16,"tbairro ")}




case dado == [TBAIRRO]

If hwg_Getkeystate(VK_UP) < 0 //Teclou seta pra cima ...
return(.t.)
endif

if empty(var)
pmsg = "CRACLIE - Este Campo deve conter Dados."
ftempo(5)
return(.f.)
endif

return(.t.)

xLINK: error: Unresolved external symbol '_HB_FUN_HWG_GETKEYSTATE'.
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

seta para cima no get

Mensagem por Itamar M. Lins Jr. »

Olá!
Qual é a versão da sua Hwgui ? Parece que é antiga.
Use GetKeyState, sem "hwg_"

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
paiva_dbdc
Usuário Nível 3
Usuário Nível 3
Mensagens: 342
Registrado em: 12 Nov 2012 09:58
Localização: uberlandia mg

seta para cima no get

Mensagem por paiva_dbdc »

Itamar

Obrigado funcionou


Paiva
Responder