citação:Ola
Poste o seu codigo onde isto ocorre
Yrece
id=quote>id=quote>FUNCTION Acesso_fornec()
local oDlg,oLbx,b01,b02,b03,B99,oft1,xx:=0,oSair:=.f.
open_dbf("fornec")
DBGOTOP()
DEFINE FONT oft1 NAME "ARIAL" SIZE 0,-10
DEFINE DIALOG oDlg resource "DLGFORNEC"
redefine listbox oLbx fields TRANSFORM(fornec->forcgc,"@R ##.###.###/####-##"),;
fornec->fornome,;
TRANSFORM(fornec->forfone,"@R ####-####");
id 181 of oDlg headers "CNPJ","Razao Social","Telefone" fieldsizes 100,230,30;
font oft1
oLbx:lcellstyle:=.t.
oLbx:nClrForeHead:=nRGB(255,255,255)
oLbx:nClrBackHead:=nRGB(255,0,137)
oLbx:nClrForeFocus:=nRGB(0,0,0)
oLbx:blostfocus:= { || b01:refresh(), b01:setfocus()}
oLbx:nClrBackFocus:=nRGB(255,255,0)
oLbx:nClrPane:={|| IIF((oLbx:cAlias)->(OrdKeyNo())%2==0,CLR_LGREEN,CLR_LGRAY)}
oLbx:nLineStyle:=3
oLbx:bLDblClick:={|| Desp_Men(oDlg,72,180)}
//oLbx:bldblclicked:={||editar(VK_RETURN,""),oLbx:refresh(),olbx:setfocus()}
oLbx:bkeyDown:={|nkey| val_nkey(nKey,oDlg),oLbx:refresh()}
redefine button b99 id 182 of oDlg action b01:setfocus() && ajute de foco / botao invisivel
redefine button b01 id 307 of oDlg action(fornec->(dbgotop()),oLbx:refresh())
redefine button b02 id 317 of oDlg
*redefine button b03 id 319 of oDlg action(fornec->(DBCLOSEAREA()),oSair:=.t.,oDlg:end())
redefine button b03 id 319 of oDlg action(oDlg:end(), close_dbf(alias()))
oDlg:lhelpicon:=.f.
activate dialog oDlg centered ON init (XSETFOCUS(oLbx))
return nil
//-----------------------------------------------------------------------------------------
STAT FUNC Val_nKey(nKey,oDlg) // Control de browse
LOCAL nKeyT:=Asc(Upper(Chr(nKey))) , nT, lSeek:=.F.
LOCAL cStrT:="0123456789*+-./+,-.<", cC, oDcli:=alias()
LOCAL cStr, oStr, oDlt, nRec:=(oDCli)->(Recno())
LOCAL aKeyT:={ 96, 97, 98, 99,100,101,102,103,104,105,;
106,107,109,110,111,187,188,189,190,226 }
DO CASE
CASE nKey==VK_ESCAPE
oDlg:end()
close_dbf(Odcli)
CASE nKey==VK_INSERT
KeyToggle(VK_INSERT)
CASE nKey==VK_DELETE
DELECAO("Você tem certeza disso")
odlg:refresh()
CASE nKey==VK_RETURN
Desp_Men(oDlg,72,180)
CASE nKey==VK_F4
CASE nKey==VK_F5
CASE nKey==VK_F6
CASE nKey==VK_F7
CASE nKey==VK_F8
CASE nKey==VK_F9
OTHERWISE
nT:=AScan(aKeyT,nKey)
cC:=IF(nT<>0,Substr(cStrT,nT,1),"")
IF (nKeyT>31 .AND. nKeyT<96) .OR. nT<>0
cStr:=IF(nT<>0,cC,Upper(Chr(nKey)))+Space(34)
DEFINE DIALOG oDlt RESOURCE "Get_Str" FONT oWnd:oFont
REDEFINE GET oStr VAR cStr ID 10 OF oDlt PICTURE "@!"
REDEFINE BUTTON ID 55 OF oDlt ACTION (lSeek:=.T.,oDlt:End()) CANCEL
oStr:bGotFocus:={|| __Keyboard(Chr(VK_RIGHT))}
ACTIVATE DIALOG oDlt CENTERED
IF lSeek .AND. !Empty(cStr)
IF Val(cStr)>0
IF (oDCli)->(IndexOrd())=1
cStr:=StrZero(Val(cStr),4)
ENDIF
IF (oDCli)->(Indexord())=4
cStr:=Val(cStr)
ENDIF
ENDIF
(oDCli)->(DbSeek(cStr,.t.))
IF (oDCli)->(EoF())
(oDCli)->(DbGoTo(nRec))
MsgBeep()
ENDIF
ENDIF
ENDIF
ENDCASE
RETURN (NIL)
//---------------------------------------------------------------------------