Tab bleibt bei Editbox hängen



  • Hallo,
    ich habe ein Fenster (kein Dialog!) erstellt, auf dem sich u.a. Editboxen befinden.
    Wenn ich mit der Tab-Taste durch die einzelnen Controls schalte funktioniert das bei allen (z.b. Buttons, IPAddresses, ...), nur wenn der Focus in die Editbox kommt, wir der ganze Text darin markiert und man kann mit Tab nicht mehr weiter zum nächsten Control.

    Wie kann ich es hinbekommen, dass per Tab-Taste der Focus auch nach der Editbox weitergegeben wird?

    MfG,
    Max


  • Mod

    Wie hast Du enn die Tabs überhaupt behandelt, wenn dies kein Dialog ist?

    Haben alle Controls auch WS_TABSTOP? Verwendest Du IsDialogMessage in Deiner Message Loop?



  • Hallo,
    ja, alle Controls haben WS_TABSTOP und meine MessageLoop schaut so aus:

    while(GetMessage(&msg, NULL, 0, 0)) {
    		if(!IsDialogMessage(hWnd, &msg)) {
    			TranslateMessage(&msg);
    			DispatchMessage(&msg);
    		}
    	}
    

    Wie hast Du enn die Tabs überhaupt behandelt, wenn dies kein Dialog is

    Was genau meinst du?



  • Hallo,
    ich habe herausgefunden, dass man per Tab-Taste nicht weiterschalten kann, wenn ES_MULTILINE als Style gesetzt ist.
    Ein weiteres Problem ist dann, dass man mit [Enter] keine neue Zeile beginnen kann..
    Was kann man tun?


  • Mod

    Welche Stile hast Du alle gesetzt. ES_WANTRETURN auch?

    Bei mir geht das ohne Probleme.



  • Nein, ES_WANTRETURN hatte ich bisher nicht gesetzt. Damit kann man jetzt wieder eine neue Zeile machen 🙂 Danke!

    Folgende Styles verwende ich: WS_CHILD | WS_VISIBLE | WS_TABSTOP | ES_MULTILINE | ES_WANTRETURN | ES_AUTOHSCROLL | ES_AUTOVSCROLL | WS_VSCROLL | WS_HSCROLL



  • Hat keiner eine Idee, warum der Focus in der Editbox bleibt?


Log in to reply