Duplo clique com Dbedit()

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

carlos_dornelas
Usuário Nível 3
Usuário Nível 3
Mensagens: 400
Registrado em: 25 Ago 2004 21:54

Duplo clique com Dbedit()

Mensagem por carlos_dornelas »

Pessoal, como capturar/detectar o duplo clique com o dbedit()? Alguém tem uma idéia? Utilizo o xharbour .99.70 + gtwvw


Antonio Carlos
Curitiba PR
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Duplo clique com Dbedit()

Mensagem por JoséQuintas »

Nessa versão e no dbedit() não sei, mas no tbrowse() do 3.0 dá.
Inclusive também capturo o mousewheel.... a rodinha do mouse.
Faço isso no Inkey.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
carlos_dornelas
Usuário Nível 3
Usuário Nível 3
Mensagens: 400
Registrado em: 25 Ago 2004 21:54

Duplo clique com Dbedit()

Mensagem por carlos_dornelas »

José Quintas, como é que você faz no inkey? através do código 1003?

Antonio Carlos
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Duplo clique com Dbedit()

Mensagem por JoséQuintas »

retirado do inkey.ch do Harbour 3.0

/* Mouse events */

#define K_MOUSEMOVE 1001
#define K_LBUTTONDOWN 1002
#define K_LBUTTONUP 1003
#define K_RBUTTONDOWN 1004
#define K_RBUTTONUP 1005
#define K_LDBLCLK 1006
#define K_RDBLCLK 1007
#define K_MBUTTONDOWN 1008 /* Middle Button Down */
#define K_MBUTTONUP 1009 /* Middle Button Up */
#define K_MDBLCLK 1010 /* Middle Button Double Click */
#define K_MMLEFTDOWN 1011 /* Mouse Move Left Down (COMPATIBILITY with removed Clipper incompatible Harbour extension, isn't used anymore) */
#define K_MMRIGHTDOWN 1012 /* Mouse Move Right Down (COMPATIBILITY with removed Clipper incompatible Harbour extension, isn't used anymore) */
#define K_MMMIDDLEDOWN 1013 /* Mouse Move Middle Down (COMPATIBILITY with removed Clipper incompatible Harbour extension, isn't used anymore) */
#define K_MWFORWARD 1014 /* Mouse Wheel Forward */
#define K_MWBACKWARD 1015 /* Mouse Wheel Backward */
#define K_NCMOUSEMOVE 1016 /* Non-Client Area Mouse Movement */
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
carlos_dornelas
Usuário Nível 3
Usuário Nível 3
Mensagens: 400
Registrado em: 25 Ago 2004 21:54

Duplo clique com Dbedit()

Mensagem por carlos_dornelas »

José, grato pelas informações. Foi só colocar um IF LASTKEY()==1006 que funcionou certinho...

[]s

Antonio Carlos Curitiba
lwinter
Usuário Nível 3
Usuário Nível 3
Mensagens: 123
Registrado em: 07 Mar 2011 12:08
Localização: Campinas - SP

Duplo clique com Dbedit()

Mensagem por lwinter »

Estou fazendo uns testes alterando o menu da biblioteca JoseQuintas, mas quando faco um double click, o Harbour reconhce apenas o K_LBUTTONDOWN (clique da esquerda) e não reconhece o K_LDBLCLK (doubleclick).
O que pode ser?
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Duplo clique com Dbedit()

Mensagem por JoséQuintas »

lwinter escreveu:Estou fazendo uns testes alterando o menu da biblioteca JoseQuintas, mas quando faco um double click, o Harbour reconhce apenas o K_LBUTTONDOWN (clique da esquerda) e não reconhece o K_LDBLCLK (doubleclick).
Se o clique duplo são dois cliques....
Se isso não for traduzido pelo Windows...
Talvez um temporizador e esperar um tempo pelo segundo clique antes de prosseguir...

Não faço idéia se isso deveria ser tratado pelo Windows ou pelo programa.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
lwinter
Usuário Nível 3
Usuário Nível 3
Mensagens: 123
Registrado em: 07 Mar 2011 12:08
Localização: Campinas - SP

Duplo clique com Dbedit()

Mensagem por lwinter »

Fiz a sua recomendação e esta funcionando. Obrigado!

rgds,
Responder