tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
4
ZUGRIFFE
1411
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    MarkusG MarkusG ist offline Mitglied Bronze
    Registriert seit
    Sep 2004
    Beiträge
    32
    Hallo alle zusammen,

    ich habe auf einer Maske mehrere Panels. Innerhalb dieser Panel befinden sich unterschiedliche Textkomponenten (JTextfield, JTextArea usw.). Wie kann ich eine Focusierreihenfolge festlegen? Ich habe auf der linken Seite des Panel drei JTextFields untereinander und auf der rechten Seite eine JTextArea. Wenn sich der Focus nun auf dem ersten Textfeld befindet und ich die Tabulatortaste betätige, springt der Focus zur TextArea. Ich möchte allerdings erzwingen, dass zuerst alle drei JTextFields "abgearbeitet" werden und danach die JTextArea.
    Weiß jemand wie das funktioniert?

    Vielen Dank im Voraus.

    P.S.: Hab danach bereits in diesem Forumsteil mit Hilfe der Suchfunktion nach Focus, Selektion ... gesucht jedoch nichts hierzu gefunden.



    Mfg. Markus
     

  2. #2
    Avatar von schnuffie
    schnuffie schnuffie ist offline Mitglied Platin
    Registriert seit
    Oct 2004
    Ort
    Ober-Roden (Hessen)
    Beiträge
    725
    ...ganz so leicht wie im HTML-Formular scheint es nicht zu gehen.

    Ich hatte mir bei AWT mit einer Ableitung geholfen:

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    
    public IntelligentesTextfeld extends TextField {
     
    private IntelligentesTextfeld next;
     
    public IntelligentesTextfeld(int i) {
      super(i);
    }
     
    public IntelligentesTextfeld(String s) {
      super(s);
    }
     
    public IntelligentesTextfeld(String s, int i) {
      super(s, i);
    }
     
    public setIntelligentesTextfeldNext(IntelligentesTextfeld next) {
      this.next = next;
    }
     
    public void transferFocus() {
      if (next != null) next.requestFocus();
    }
    CU schnuffie
     

  3. #3
    MarkusG MarkusG ist offline Mitglied Bronze
    Registriert seit
    Sep 2004
    Beiträge
    32
    Vielen Dank für die schnelle Antwort.

    Ich habe gerade im Sun Tutorial entdeckt, dass die Methode setNextFocusableComponent nicht mehr verwendet wird.

    Stattdessen ist anscheinend die Klasse FocusTraversalPolicy zu verwenden.

    In einem Sun-Beispiel wird von der Klasse FocusTraversalPolicy abgeleitet und danach die entsprechenden Methoden, wie z.B. getComponentAfter(Container focusCycleRoot,
    Component aComponent), getComponentBefore(Container focusCycleRoot, Component aComponent), an die eigenen Bedürfnisse (Komponentnamen, Reihenfolge usw.) angepasst.


    Mfg. Markus
     

  4. #4
    Avatar von schnuffie
    schnuffie schnuffie ist offline Mitglied Platin
    Registriert seit
    Oct 2004
    Ort
    Ober-Roden (Hessen)
    Beiträge
    725
    ...naja, wenn's das gibt - ist doch prima! Dann kannst Du ja auch mal Deinen fertigen (funktionstüchtigen) Code posten, dann kann ich auch noch was lernen.

    Cu schnuffie
     

  5. #5
    MarkusG MarkusG ist offline Mitglied Bronze
    Registriert seit
    Sep 2004
    Beiträge
    32
    Allgemein gehaltene Beispiele hierzu gibt es unter:

    http://java.sun.com/docs/books/tutor...FocusTraversal
     

Ähnliche Themen

  1. Kreise festlegen
    Von unionerdirk im Forum Photoshop
    Antworten: 2
    Letzter Beitrag: 04.07.07, 16:50
  2. VB 6 Prozessname festlegen
    Von nicok im Forum Visual Basic 6.0
    Antworten: 0
    Letzter Beitrag: 06.10.06, 18:26
  3. Port festlegen
    Von MD1978 im Forum .NET Archiv
    Antworten: 2
    Letzter Beitrag: 15.03.05, 17:56
  4. dokumentenname festlegen
    Von Rearhh im Forum VisualStudio & MFC
    Antworten: 2
    Letzter Beitrag: 20.02.05, 14:41
  5. DNS Server festlegen
    Von gidde im Forum Internet, DSL & Flatrate
    Antworten: 1
    Letzter Beitrag: 18.01.05, 11:19