Benutze Tab-Taste bei einem mehrzeiligen Text in swt?

8

Wie verhindere ich, dass ein mehrzeiliges Textfeld die Tabulatortaste drückt?

Ich meine: Ich würde gerne TAB verwenden, um zwischen den Elementen eines Fensters zu wechseln, aber wenn ich den mehrzeiligen Text eingebe, wird TAB ein "normaler" Schlüssel und fügt einfach Tabulatoren in den Text ein, den ich eintippe.

Wie gehe ich damit um? Soll ich einen benutzerdefinierten Listener schreiben oder kann ich das Verhalten der Komponente mithilfe einer SWT-Konstante ändern?

    
G B 29.01.2010, 11:58
quelle

2 Antworten

20

SWT definiert einen Mechanismus zum Implementieren dieser Art von Verhalten unter Verwendung der TraverseListener-Klasse. Das folgende Snippet (aus hier ) zeigt wie:

%Vor%     
Simon 03.11.2010, 06:48
quelle
3

Fügen Sie dem Textfeld oder der Textfläche einen Tastenanschlag-Listener hinzu und implementieren Sie einen speziellen Handler für TAB . Ich habe diesen "Tab-Fang" auch bei Swing-Anwendungen gesehen und es ist normalerweise nervig.

Sie könnten einen anderen Handler für Shift - TAB anbieten, der dann ein \t einfügt, wenn Sie weiterhin Registerkarten im Textfeld zulassen möchten.

    
Andreas_D 29.01.2010 12:11
quelle

Tags und Links