Listener auf JTabbedPane

  • Themenstarter Gelöschtes Mitglied 1653
  • Beginndatum
Status
Nicht offen für weitere Antworten.
G

Gelöschtes Mitglied 1653

Gast
Hallo alle zusammen!

Ich habe eine Frage bzgl. JTabbedPane. Mein Programm erstellt insgesamt 3 Registerkarten welche mit unterschiedlichen Panels gefüllt sind. Das erste Panel hat einen festen Inhalt welche in der ersten Registerkarte angezeigt wird. Die anderen Panels erhalten Inhalte aus einer Datenbank. Im Moment habe ich es so gelöst das man in diesen Registerkarten auf den Button "Details laden" klicken muss. Dann wird das Panel erst mit Inhalten aus der Datenbank gefüllt. Ich hätte jetzt gerne das beim Anwählen der Registerkarten direkt der Inhalt auf die Panels geladen wird. Gibt es für so etwas einen Listner. Habe schon mit FocusListner gearbeitet funktioniert aber irgendwie nicht richtig. Um Datenbankperformance zu sparen möchte ich die Daten erst holen wenn der User die Registerkarte angeklickt hat.

Vielen Dank für die Antworten!

dwuest
 

L-ectron-X

Gesperrter Benutzer
Du kannst an Deiner JTabbedPane einen javax.swing.event.ChangeListener registrieren.
Ein javax.swing.event.ChangeEvent wird immer dann ausgelöst, wenn auf ein Tabbed (Reiter) geklickt wurde.
Du überschreibst dann die stateChanged()-Methode, in der Du programmierst, was getan werden soll, wenn ein solches Event gefeuert wurde.
 
G

Gelöschtes Mitglied 1653

Gast
Kann man auch einen Listner auf das Panel in der Registerkarte setzen, z.B. ActivePanelListner??

Trotzdem schon mal vielen Dank, werde versuchen es mit diesem Listner umzusetzen.
:D

Viele Grüße
dwuest
 

skaal

Mitglied
ich habe gerade genau dasselbe problem.

Du überschreibst dann die stateChanged()-Methode, in der Du programmierst, was getan werden soll, wenn ein solches Event gefeuert wurde.

heißt das, dass ich extra nochmal eine klasse ableiten muss, um an diesen JTabbedPane.ModelListener zu kommen? gibts da nichts einfacheres?
oder versteh ich da jetzt wieder gänzlich falsch?
 

L-ectron-X

Gesperrter Benutzer
Registriere an Deiner JTabbedPane einen ChangeListener und über schreibe die stateChanged()-Methode.
Der Code dazu kann so aussehen:
Code:
JTabbedPane myTabbedPane = new JTabbedPane()
JPanel jPanelRef = new JPanel();
String activePanelTitle;
...
...
...
myTabbedPane.addTab("TabbedTitle", jPanelRef);

myTabbedPane.addChangeListener(new ChangeListener() {
  public void stateChanged(ChangedEvent e) {
    //tu was, wenn ein Tabbed geklickt wurde
    //Bspw. ermitteln des Titels des geklickten Tabbed
    activePanelTitle = myTabbedPane.getTitleAt(myTabbedPane.getSelectedIndex());
  }
}
 

skaal

Mitglied
danke. so hatte ich es sogar (von der umrechnung auf den titel mal abgesehen), man sollte dann nur auch bei 0 und nicht bei 1 anfangen zu zählen.
 

LastUnicorn

Aktives Mitglied
da hab ich gleich mal eine frage zu. Ich meine zu dem Change Listener

Ist es möglich, dass ich wenn der Listener zieht, dass vorher selektierte Objekt bekomme ? Ich stehe da gerade etwas auf der Leitung und möchte nicht unbedingt mir alles in der Klasse merken müssen.
 

AlArenal

Top Contributor
Wo ist denn das Problem ne Variable (int) anzulegen, wo der Index des zuletzt aktiven Tabs drinsteht? Den verwendest du in deiner stateChanged() und setzt ihn danaach auf den aktuellen Wert und gut iss.
 

LastUnicorn

Aktives Mitglied
jaja, den ansatz hatte ich ja aber es hätte ja sein können, dass man diese Information erhält. Weil...dann wär es schlecht sich das zu merken, da man dadurch mehraufwand hätte und alles nicht so sauber wär
 
G

Guest

Gast
Hallo.

Hab diesen Thread gefunden, und hat mir auch ziemlich weiter geholfen. Irgendwie klappt es aber immer noch nicht so ganz.

ungefähr so sieht zur Zeit mein Code aus:

Code:
        tabReiter.addChangeListener(new javax.swing.event.ChangeListener(){ 
	public void stateChanged(javax.swing.event.ChangeEvent e) { 
                	if (tabReiter.getSelectedIndex() == 1)
 		{
 	                	panReiter2 = new Reiter2();
 		                tabReiter.setSelectedComponent(panReiter2);
 		}
 		else if (tabReiter.getSelectedIndex() == 2)
 		{
 			panReiter3 = new Reiter3();
 			tabReiter.setSelectedComponent(panReiter3);
 		}
 		else if (tabReiter.getSelectedIndex() == 3)
 		{
 			panReiter4 = new Reiter4();
 			tabReiter.setSelectedComponent(panReiter4);
 		}
              }
        });

Leider klappt es nicht so. die setSelectedComponent-Methode wirft immer ne ganze Menge Exceptions.
Wie kann ich also, erst beim Wechsel des Tabs den Tab füllen?

Schon mal Danke
 
G

Guest

Gast
Habs schon umgangen, deshalb krieg ich die Exceptions nicht mehr hin.
das setSelectedComponent wollte bei mir aber irgendwie gar nicht, naja, wie gesagt, habs jetzt anders gelöst.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
A JTabbedPane und ein passender Listener AWT, Swing, JavaFX & SWT 2
padde479 MenuItem MouseEvent/-Listener AWT, Swing, JavaFX & SWT 5
W Gibt es einen "automatischen Listener" in Swing oder JTable oder der ATM-Klasse? AWT, Swing, JavaFX & SWT 14
G listener repaint() - verschiedene Darstellung AWT, Swing, JavaFX & SWT 24
P JTable Listener für die Änderung einzelner Zellen oder Rows AWT, Swing, JavaFX & SWT 2
K Warum genau hat man einen Listener, dann ein Event und was ist ein Adapter AWT, Swing, JavaFX & SWT 2
J Key-Listener in Java AWT, Swing, JavaFX & SWT 37
S JavaFX - mit Listener Veränderungen in einer TableView abhören AWT, Swing, JavaFX & SWT 3
N JavaFX 1 Listener für mehrere ChoiceBoxen AWT, Swing, JavaFX & SWT 3
B Probleme Action Listener Taschenrechner AWT, Swing, JavaFX & SWT 27
M List Listener AWT, Swing, JavaFX & SWT 37
I AWT Listener während man in anderem Fenster ist AWT, Swing, JavaFX & SWT 4
U Funktionsweise Listener AWT, Swing, JavaFX & SWT 1
L TextField Listener AWT, Swing, JavaFX & SWT 13
K Nullpointer Combobox Listener AWT, Swing, JavaFX & SWT 2
L JavaFX Image im ImageView auf Scroll Listener reagieren AWT, Swing, JavaFX & SWT 5
Salo JTabel Selection listener Bsp. AWT, Swing, JavaFX & SWT 5
J JTable Selection Listener funktioniert nicht AWT, Swing, JavaFX & SWT 4
J Action Listener Rückgabewert AWT, Swing, JavaFX & SWT 14
MaxG. Swing JMenu einen Listener Hinzufügen AWT, Swing, JavaFX & SWT 25
L JavaFX Verbindung zwischen Beschreibung und Listener (Codebehind Klasse) AWT, Swing, JavaFX & SWT 4
T Swing Methode in Listener aufrufen AWT, Swing, JavaFX & SWT 3
S Swing Tabellen - Listener & richtige Row AWT, Swing, JavaFX & SWT 3
J Java -8 Action Listener für mehrere Buttons AWT, Swing, JavaFX & SWT 9
S Erste Schritte mit GUI - Fileverarbeitung, Listener,... AWT, Swing, JavaFX & SWT 10
M JButton - Listener AWT, Swing, JavaFX & SWT 1
R Swing Mehrere JTextFields mit einem Document Listener AWT, Swing, JavaFX & SWT 2
K JavaFX Focus Listener für gesamte Scene AWT, Swing, JavaFX & SWT 1
M Key Listener reagiert nicht AWT, Swing, JavaFX & SWT 4
F In Action Listener TextFields einlesen und prüfen. Abbruch bei falschen Eingaben. Wie mache ich das? AWT, Swing, JavaFX & SWT 2
M Listener funktioniert nicht AWT, Swing, JavaFX & SWT 7
S Swing JComboBox mit Listener aktualisieren AWT, Swing, JavaFX & SWT 13
elischa JFrame über mehrere JPanel und Listener AWT, Swing, JavaFX & SWT 17
llabusch Event Handling Listener spielt verrückt AWT, Swing, JavaFX & SWT 8
kaoZ Swing Architektonisches Problem / Listener / MVC AWT, Swing, JavaFX & SWT 14
H org.eclipse.swt.widgets.Scale MouseRelease listener AWT, Swing, JavaFX & SWT 1
MaDDin-94 Swing Listener reagiert nicht immer AWT, Swing, JavaFX & SWT 2
A JLabel im Listener färben AWT, Swing, JavaFX & SWT 11
M Key-,... Listener funktioniert nicht immer AWT, Swing, JavaFX & SWT 2
P Event Handling Listener beim öffnen von einem JPopupMenu AWT, Swing, JavaFX & SWT 3
A Listener für JGTextField AWT, Swing, JavaFX & SWT 2
J Programmierstil: Kommunikation Listener und GUI AWT, Swing, JavaFX & SWT 3
B JTable Renderer / Listener AWT, Swing, JavaFX & SWT 7
M Swing JList Listener AWT, Swing, JavaFX & SWT 20
K Action Listener implementieren über Objekt AWT, Swing, JavaFX & SWT 14
E Listener AWT, Swing, JavaFX & SWT 3
M SWING Listener ohne Wirkung AWT, Swing, JavaFX & SWT 2
P Listener Auswahl Tabelle AWT, Swing, JavaFX & SWT 6
P JPanel- Listener durch JTextArea aktivieren AWT, Swing, JavaFX & SWT 8
J Swing dragging listener AWT, Swing, JavaFX & SWT 5
H Problem mit dem Action listener.... AWT, Swing, JavaFX & SWT 2
J Frame mit Button erstellen - Warum ist es nötig, Frame über Unterklasse zu erstellen? (Reg Listener) AWT, Swing, JavaFX & SWT 2
M Fenster schließen - Listener AWT, Swing, JavaFX & SWT 5
G SWT TreeViewer - drop listener austauschen AWT, Swing, JavaFX & SWT 2
S Action Listener in innerer Klasse ausführen. AWT, Swing, JavaFX & SWT 8
J Sinn eines Selection Listener AWT, Swing, JavaFX & SWT 5
M JList mit DefaultListModel und listener AWT, Swing, JavaFX & SWT 4
M comboBox Listener? AWT, Swing, JavaFX & SWT 2
T Listener in anderen Panel deaktivieren AWT, Swing, JavaFX & SWT 3
A Swing Suche Listener für beliebige Änderung an GUI Items/Controls AWT, Swing, JavaFX & SWT 8
T SWT: Listener auf einem Button reagiert nicht AWT, Swing, JavaFX & SWT 2
L Swing JTextField Content-Listener AWT, Swing, JavaFX & SWT 4
P AWT Wie kann mein listener den Inhalt eines anderen Textfelds ändern? AWT, Swing, JavaFX & SWT 10
M Ansätze zur Kombination mehrerer Listener für Interaktion AWT, Swing, JavaFX & SWT 19
C JLabel Listener auf Textänderung? AWT, Swing, JavaFX & SWT 5
M Mouse Wheel Listener reagiert mehrmals AWT, Swing, JavaFX & SWT 5
F SWT Button listener richtig erstellen AWT, Swing, JavaFX & SWT 2
El_Lobo Swing Problem bei Methodenaufruf in innerer Klasse bei Listener AWT, Swing, JavaFX & SWT 3
S Wem füge ich welchen Listener hinzu? AWT, Swing, JavaFX & SWT 4
R Durch Listener lässt sich Programm nicht mehr ausführen AWT, Swing, JavaFX & SWT 4
T Callback vs. Event listener AWT, Swing, JavaFX & SWT 7
S Swing JTree und seine Listener... AWT, Swing, JavaFX & SWT 4
E JComboBox Listener AWT, Swing, JavaFX & SWT 2
AyKay SWT (alle) Listener bzw. ModifyEventListener entfernen AWT, Swing, JavaFX & SWT 2
S jTextField Listener AWT, Swing, JavaFX & SWT 7
E Listener, werte in andere Klasse übernehmen AWT, Swing, JavaFX & SWT 11
L Action listener in bestimmter spalte AWT, Swing, JavaFX & SWT 2
J AWT Action Listener etc. AWT, Swing, JavaFX & SWT 7
xehpuk Swing Listener für JPopupMenu AWT, Swing, JavaFX & SWT 3
F JCalendar mouseclick listener AWT, Swing, JavaFX & SWT 2
W AWT Listener bei TrayIcon AWT, Swing, JavaFX & SWT 2
K Swing Listener bei JPopupMenu AWT, Swing, JavaFX & SWT 9
E Swing JTextField Listener nach Update?! AWT, Swing, JavaFX & SWT 2
T TransformGroup Listener AWT, Swing, JavaFX & SWT 8
O Swing JTable Listener AWT, Swing, JavaFX & SWT 2
O Collection Listener AWT, Swing, JavaFX & SWT 6
L AWT Paint(g) im Listener aufrufen AWT, Swing, JavaFX & SWT 2
G JTree - Observer oder Listener? AWT, Swing, JavaFX & SWT 6
Avalarion SWT Listener auf Label oder Text Teile AWT, Swing, JavaFX & SWT 10
C Ermitteln ob JComponent einen Listener besitzt AWT, Swing, JavaFX & SWT 2
L JTextfield Listener AWT, Swing, JavaFX & SWT 3
C Listener Probleme AWT, Swing, JavaFX & SWT 6
N Listener für Variable AWT, Swing, JavaFX & SWT 4
C Swing Listener für TabPanel AWT, Swing, JavaFX & SWT 8
B Line aus Listener? AWT, Swing, JavaFX & SWT 11
G Model,Listener und background jobs AWT, Swing, JavaFX & SWT 4
1 JList - clearSelection nicht berücksichtigen im Listener AWT, Swing, JavaFX & SWT 7
I Swing Listener auf JPanel AWT, Swing, JavaFX & SWT 9
Dit_ MutableComboBoxModel | Listener fehlt ? AWT, Swing, JavaFX & SWT 6
T Swing JSlider und Adjustment-Listener wollen nicht so recht AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen


Oben