Hola Manuel Mercado.
Es un placer de usar su clase. De hecho el uso desde el año 2003.
En esa ocasión se produjo un error de utilizar ALT + CLAVE, cuando hay dos cuadros de diálogo abierto y tienen los mismos botones. Al pulsar ALT + CLAVE actuó todos los botones que habÃa que clave.
Arreglar la sustitución de la SendMsg() por PostMessage(), pero en el actual xHarbour el error persiste. ¿Qué puede ser?
- ============================================================================
- METHOD TSButton:GetDlgCode() Version 6.0 Mar/1/2008
- ============================================================================
METHOD GetDlgCode( nLastKey ) CLASS TSButton
If nLastkey > 0 .and. nLastkey == ::nWakeup
::nWakeup := 0
EndIf
If (! ::oWnd:lValidating .and. ::lCancel .and. ::cAccel != Nil .and. ;
GetAsyncKey( VK_MENU ) .and. ;
GetAsyncKey( Asc( Upper( ::cAccel ) ) ) .and. ::nWakeup == 0 )
** Modificacao feita por Alexandre Pereira JUL/2003
PostMessage( ::hWnd, FM_CLICK )
- ::SendMsg( FM_CLICK )
** Fim
Return 1
ElseIf (! ::oWnd:lValidating .and. ::lWhen .and. !::lCancel .and. ::cAccel != Nil .and. ;
GetAsyncKey( VK_MENU ) .and. ;
GetAsyncKey( Asc( Upper( ::cAccel ) ) ) .and. ::nWakeup == 0 )
** Modificacao feita por Alexandre Pereira JUL/2003
PostMessage( ::hWnd, FM_CLICK )
-
::SendMsg( FM_CLICK )
** FimReturn 1
EndIf
Return If( ::lActive, DLGC_WANTALLKEYS, Nil )
///////////////////////////////////////////////
Lo siento por la traducción.
Alexandre Pereira
Alexandre Pereira
Harbour 3.2 - FWH - 25.12 - MSVC - VsCODE - Win11