Buenas Tem sim, vou usar o exemplo acima que postei para colocar o que você deseja:
Código: Selecionar todos
#include "hwgui.ch"
STATIC Thisform
FUNCTION _teste
PRIVATE oDatabase1, oGroup1, oBrowse1
// DATABASE OPEN oDatabase1 // SCRIPT GENARATE BY DESIGNER
oDatabase1 := HDataBase():new(, 'oDatabase1',.T.,.T.,'',, )
oDatabase1:AddCursor( HCursor():New('D:\SYGECOM\sagi\dados\AGENDA.DBF', 'AGENDA' ,,.F.,.F.,.F.))
// END DATABASE SCRIP - oDatabase1
INIT DIALOG oDlg TITLE "Nome do Form" ;
ICON HIcon():AddResource(1004) ;
AT 14,140 SIZE 677,489 ;
FONT HFont():Add( '',0,-13,400,,,) CLIPPER NOEXIT ;
STYLE WS_POPUP+WS_CAPTION+WS_SYSMENU+WS_MINIMIZEBOX+DS_CENTER
Thisform := oDlg
@ 37,32 BROWSE oBrowse1 DATABASE SIZE 548,250 ;
STYLE WS_TABSTOP
// CREATE oBrowse1 // SCRIPT GENARATE BY DESIGNER
oBrowse1:lDispSep := .F.
oBrowse1:alias := 'agenda'
oBrowse1:nColumns := 3
oBrowse1:bKeyDown := {|o,key| Browse_KEY(o, key ) }
SELECT (oBrowse1:alias)
oBrowse1:AddColumn( HColumn():New("Nome", FieldBlock( 'nome' ) ,'C',40, 0 ,.F.,0,0,,,,,,,,,))
oBrowse1:AddColumn( HColumn():New("Celular", FieldBlock( 'celular' ) ,'C',14, 0 ,.F.,0,0,,,,,,,,,))
oBrowse1:AddColumn( HColumn():New("Tipo", FieldBlock( 'tipo' ) ,'C',30, 0 ,.F.,0,0,,,,,,,,,))
// END BROWSE SCRIPT - oBrowse1
@ 16,6 GROUPBOX oGroup1 CAPTION "Nome do Grupo" SIZE 644,415 ;
COLOR 16711680
ACTIVATE DIALOG oDlg SHOW SW_HIDE
RETURN oDlg:lresult
FUNCTION Browse_KEY( oBrowse, key )
DO CASE
CASE KEY= VK_ESCAPE
EndDialog()
CASE KEY = VK_RETURN
EndDialog()
CASE KEY = 1
EndDialog()
CASE KEY = VK_F1
//SOBRE() // EXECUTA A AJUDA
CASE KEY = VK_F2
//BUSCA_NOME(oBrowse) //FAZ UMA BUSCA NO BROWSE
CASE KEY = VK_F5
//Gera_Excel(oBrowse) // GERA UM EXCEL DO QUE ESTÁ NO BROWSE
CASE KEY = VK_F9
ShellExecute("calc") // CHAMA A CALCULADORA
otherwise
ENDCASE
IF KEY=37
MSGINFO("Esqurda")
ELSEIF KEY=39
MSGINFO("Direita")
ELSE
MSGINFO("Outra Tecla.: " + STR(KEY) )
ENDIF
Return .T.