vailtom Posted March 31, 2005 Report Share Posted March 31, 2005 Bom dia pessoal, No xHarbour o evento KeyDown não trabalha corretamente, mas no Harbour 0.44 funciona blzinha! Segue um exemplo detalhado do erro: /*****************************************/ #include "FiveWin.ch" function Main() local oDlg, oGet, oBtn local lTest := .t. local nTest := space(50), oTEST1 local cTest := "ABC", oTEST2 DEFINE DIALOG oDlg TITLE "A simple GET" FROM 2, 2 TO 13,40 @ 10, 10 GET oTEST1 VAR nTest SIZE 120, 13 pixel OF oDlg oTEST1:bKeyDown = { | nKey | IF(nKey=13,MsgInfo(nTest), )} @ 30, 10 GET oTEST2 VAR cTest SIZE 120, 13 pixel OF oDlg; PICTURE "@! XXXXXXXXXX" color "N*/W"; valid (oTEST2:Refresh(), .T.) @ 3, 4 BUTTON oBtn PROMPT "&Ok" SIZE 45, 12 OF oDlg ACTION (MsgInfo(cTest ) ) @ 3, 14 BUTTON "&Cancel" SIZE 45, 12 OF oDlg ACTION ( oDlg:End() ) ACTIVATE DIALOG oDlg CENTERED return nil procedure AppSys // XPP compatibility for FiveWin++ return /*****************************************/ Um cliente comercial da SQL LIB detectou o problema e eu corrigi isto do seguinte modo: * Abra o arquivo tget.prg que está nos sources do FWH * Na linha 686 no metodo KeyDown do obj TGET (FWH 2.5) adicione estas linhas: #ifdef __XHARBOUR__ if ::bKeyDown <> nil ::Assign() end #endif /* __XHARBOUR__ GET*/ * Salve e recompila as LIBs do FWH or apenas LINK o novo tget.prg junto do seu projeto. Em todos os testes rodou OK Lembrando que este erro apenas ocorre no xHB ... em HB funciona 100% . Espero ter ajudado, qqer coisa entrem em contato Abraços, Vailton Renato da Silva MSN : renato@kssoftware.com.br ICQ.. : 176908824 Skype: vailtom Vailton Renato SQL LIB Developer MSN: renato@kssoftware.com.br Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.