Hallo,
ich setze über DCGETOPTIONS CHECKGET, damit es wenigstens ein wenig wie Windows aussieht.
Habe allerdings das Problem, das dies Feld nicht automatisch den Focus erhält. Ich muss praktisch die Checkbox anklicken und kann dann entweder per Maus oder mit der Leertaste den gewünschten Zustand setzen.
Weiß jemand wie es geht ?
Checkget
Moderator: Moderatoren
- Tom
- Der Entwickler von "Deep Thought"
- Beiträge: 9367
- Registriert: Do, 22. Sep 2005 23:11
- Wohnort: Berlin
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 361 Mal
- Kontaktdaten:
Re: Checkget
Hallo, Klaus.
Ich habe ein bisschen herumprobieren müssen, bis ich herausgefunden habe, warum es bei mir geht. Offenbar ist die HILITEGETS-Option dafür verantwortlich. Dieser Code hier erlaubt das Springen mit ENTER und TAB von und zur Checkbox:
Ich habe ein bisschen herumprobieren müssen, bis ich herausgefunden habe, warum es bei mir geht. Offenbar ist die HILITEGETS-Option dafür verantwortlich. Dieser Code hier erlaubt das Springen mit ENTER und TAB von und zur Checkbox:
Code: Alles auswählen
#include "appevent.ch"
#include "dcdialog.ch"
#pragma library("dclipx.lib")
function main()
local GetList := {}, GetOptions := {}
dcget options checkget tabstop nosupervise noconfirm HILITEGETS GRA_CLR_BLUE
cName := space(30)
lTest := .F.
@ 1,1 dcsay "Name:" get cName
@ 2,1 dcsay "Test:" get lTest
dcread gui fit addbuttons options GetOptions parent @oDialog eval {|o|SetAppWindow(o)}
return nil
procedure appsys() ; Return
Herzlich,
Tom
Tom
- Koverhage
- Der Entwickler von "Deep Thought"
- Beiträge: 2470
- Registriert: Fr, 23. Dez 2005 8:00
- Wohnort: Aalen
- Hat sich bedankt: 102 Mal
- Danksagung erhalten: 3 Mal
- Kontaktdaten:
Re: Checkget
Hallo Tom,
erstmal danke für Deinen Test. Dies ist mein Code, HILITEGETS wurde von mir nach Deinem Hinweis eingefügt.
Danach bekommt die Checkbox den Focus, wenn ich mit Tab springe, mit Enter funktioniert das ganze bei mir so nicht.
DCGETOPTIONS BUTTONALIGN DCGUI_BUTTONALIGN_CENTER ;
COLORGETS {{GRA_CLR_BLACK,GRA_CLR_YELLOW}} ;
HILITEGETS GRA_CLR_YELLOW ;
AUTORESIZE ;
TABSTOP ;
NOSUPERVISE ;
CHECKGET ;
ROWOFFSET ("fi")->zeiloff ;
WINDOWWIDTH nMaxCol ;
WINDOWHEIGHT nMaxRow ;
WINDOWROW aPos[2] ;
WINDOWCOL aPos[1]
DCHOTKEY xbeK_F1 ACTION { || my_help( dc_getactiveinfo( GetList ) ) } // F1
DCHOTKEY xbeK_F12 ACTION { || DC_ReadGuiEvent( DCGUI_EXIT_OK, GetList ) } // F12
DCREAD GUI OPTIONS GetOptions CLEAREVENTS TITLE msg25 MODAL SETAPPWINDOW ;
ENTEREXIT to lOk ADDBUTTONS
erstmal danke für Deinen Test. Dies ist mein Code, HILITEGETS wurde von mir nach Deinem Hinweis eingefügt.
Danach bekommt die Checkbox den Focus, wenn ich mit Tab springe, mit Enter funktioniert das ganze bei mir so nicht.
DCGETOPTIONS BUTTONALIGN DCGUI_BUTTONALIGN_CENTER ;
COLORGETS {{GRA_CLR_BLACK,GRA_CLR_YELLOW}} ;
HILITEGETS GRA_CLR_YELLOW ;
AUTORESIZE ;
TABSTOP ;
NOSUPERVISE ;
CHECKGET ;
ROWOFFSET ("fi")->zeiloff ;
WINDOWWIDTH nMaxCol ;
WINDOWHEIGHT nMaxRow ;
WINDOWROW aPos[2] ;
WINDOWCOL aPos[1]
DCHOTKEY xbeK_F1 ACTION { || my_help( dc_getactiveinfo( GetList ) ) } // F1
DCHOTKEY xbeK_F12 ACTION { || DC_ReadGuiEvent( DCGUI_EXIT_OK, GetList ) } // F12
DCREAD GUI OPTIONS GetOptions CLEAREVENTS TITLE msg25 MODAL SETAPPWINDOW ;
ENTEREXIT to lOk ADDBUTTONS
Gruß
Klaus
Klaus