Tabstop Reihenfolge
-
Hi,
Ich hab ein ernstzunehmendes Problem mit der Reihenfolgen bestimmung der Tabstops, sprich zu welchem Control nach welchem anderen gesprungen wird.
Nachdem ich Tabstops ins Programm eingebaut hatte, dachte ich mir, cool funktioniert. Jetzt nur noch zum nächsten springen. Allerdings springt er falschrum durch.
Ok, dann ändern wir halt die Reihenfolge der vergebenen ID's von aufsteigend auf Absteigend. Wieder kein Effekt.
Nagut, dann vielleicht die Controls in umgekehrter Reihenfolge erstellen? Nein, so gehts auch nicht.
Kann mir jemand weiterhelfen?
Vielen dank im voraus
George
-
Die Reihenfolge geht nach der Erstellung der Controls.
Arbeitest du mit dem Resourceneditor? Da kann man nämlich die Reihenfolge ändern.
-
In Visual Studio drückste im Resourceneditor mal STRG+D.
Dann kannste per Mausclick die Reihenfolge festlegen...
-
Danke für die Antworten.
Leider arbeite ich zwar mit VC aber nicht mit dem Resourcen Editor, da das Fenster sowieso dynamisch generiert werden muß, dachte ich mir da lasse ich das mit dem ResourcenEditor gleich sein;)
-
Ist das Problem jetzt gelöst oder nicht?
-
Als ich deinen Beitrag gelesen hatte, hatte ich das problem immer noch. Dann habe ich mal versucht eine Testanwenung zu erstellen um zu demonstrieren was ich meine und siehe da, da funktionierts einwandfrei.
Nach langem rumgesuche bin ich dann auch draufgekommen woran es liegt:
Ich erstelle erst alle Controls (Buttons). Später in einer anderen Schleife ändere ich nachträglich deren Position mit SetWindowPos. Das ist der Knackpunkt. Man muß bei Setwindowpos dann unbedingt immer beim hInstertAfter Parameter den vorhergehenden Button angeben. Sonst ist das letze Control desen Position verändert wurde, das erste in der Tab Order.
Da kom mal einer drauf
-
Wenn du bei den Flags SWP_NOZORDER mit angibst sollte das aber eigentlich auch so gehen
-
Da könntest du direkt recht haben. Warum einfach wenns auch kompliziert geht