![]() |
Delphi-Version: 2006
TabOrder / TabStop funktioniert nicht
Hallo zusammen,
ich habe verschiedene Forms auf denen verschiedene Edit-Felder etc sind. Auf einer Form funktioniert nur das weiterschalten per Tab nicht ? Habe dort drei GroupBoxen und in denen dann die Felder, welche ich alle mit Tab-Order von 0 ... betitelt habe. Was habe ich eventuell falsch gemacht das das mit dem Tabulator weiterschalten nicht mehr geht ? Gruss Holger |
AW: TabOrder / TabStop funktioniert nicht
Hallo Holger,
kenne das Problem von RadioGroups, da ist TabStop/TabOrder so lange nicht möglich bis der ItemIndex <> -1 ist, d.h. ein Item muss per Default ausgewählt sein um die Komponente per Tab anzuspringen. Sieht bei der GroupBox ähnlich aus. Bin leider noch auf keine Lösung gestoßen die mich nicht zwingt ein Item vorzubelegen. Gruß Philipp |
AW: TabOrder / TabStop funktioniert nicht
Das heisst ich kann auf allen Forms, wo mehr als eine GroupBox ist, das weiterspringen von Tabs nicht nutzen ?
Da muss es doch eine Lösung geben ? Bei mir gibt es manche Forms die haben auch mehrere GroupBoxen und da geht der Tab, bei anderen wieder nicht. Finde nur nicht den unterschied wodran es leigen könnte ? Gruss Holger |
AW: TabOrder / TabStop funktioniert nicht
Das hat er nicht gesagt, sondern dass je Gruppe ein Element ausgewählt, der ItemIndex also > -1 sein muss. Eine Gruppe mit einem ItemIndex von -1 kann per Tab nicht angesprungen werden.
[edit] Da es sich bei Dir aber um Groupboxen handelt und nicht um Radiogroups: Du hast die betreffenden Groupboxen nicht versehentlich disabled oder sie auf disablete Panels gelegt? Das Dumme daran ist, dass man das gar nicht sieht, sich aber dafür umso mehr wundert. [/edit] |
AW: TabOrder / TabStop funktioniert nicht
Hallo,
ein Panel ist dort nicht und die GroupBoxen sind auch alle Enabled = TRUE Ist da eventuell noch eine andere Einstellung die das mit den Tabs verhindern kann ? Gruss Holger |
AW: TabOrder / TabStop funktioniert nicht
Dann fällt mir nur noch ein, dass für die Elemente einer betreffenden Groupbox Tabstop auf false steht, da zeigt sich dann auch das geschilderte Verhalten.
|
AW: TabOrder / TabStop funktioniert nicht
Die Groupbox hatte zwar TabStop = FALSE aber auch ein setzen auf TRUE hat nichts bewirkt.
Weiß echt nciht wodran das liegen könnte ... |
AW: TabOrder / TabStop funktioniert nicht
Nicht die GroupBox an sich, sondern die enthaltenen Komponenten waren gemeint. Wenn es das auch nicht ist, gehen mir die Ideen aus.
|
AW: TabOrder / TabStop funktioniert nicht
Die enthaltenen Komponenten stehen alle auf TabStop = TRUE.
|
AW: TabOrder / TabStop funktioniert nicht
Hallo,
ich habe den Fehler gefunden. Nur verstehe ich Ihn nicht. Ich habe auf der Form ein StringGrid in das ich eine ComboBox integriert habe. Nun gibt es dort unter den privaten proceduren folgende procedure:
Delphi-Quellcode:
Auch wenn ich so wie oben dargestellt den Code ausklammere funktioniert der TabStop nicht. Erst wenn ich die procedure komplett entferne geht der TabStop wieder ?
...
private procedure CMDialogKey(var msg: TCMDialogKey); message CM_DIALOGKEY; public { Public-Deklarationen } end; ... procedure TForm_bearb.CMDialogKey(var msg: TCMDialogKey); begin {if ActiveControl = CB_Einheit then begin if msg.CharCode = VK_TAB then begin // setzt den Fokus zurück auf das StringGrid StringGrid.SetFocus; StringGrid.Perform(WM_KEYDOWN, msg.CharCode, msg.KeyData); msg.Result := 1; exit; end; end;} end; Die Funktion ist dafür da, das wenn der TabStop in der implementierten ComboBox gedrückt wird, dann wieder auf das StringGrid springt, aber leider funktionieren dadurch alle anderen TabStops nicht mehr. Was kann ich tuen ? Gruss Holger |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:36 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz