Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

JTable "schachteln"

Empfohlene Antworten

Veröffentlicht

Hi!

Nochmal ne Swingfrage:

Kann man JTables schachteln? d.h. in eine Zelle eine neue JTable reinpacken.

Muss das / Wie muss das in der setValueAt-Methode angegeben werden?

Strings oder so kann ich schon in den Zellen ausgeben (werden über eine List eingelesen). Jetzt müsste er auch irgendwie noch das ganze mit einer Tabelle schaffen um zu einer Formatierung zu kommen. \n oder so ignoriert er im String nämlich auch. Sonst könnte ich so einen Zeilenumbruch erzwingen und bräuchte nicht die Tabelle in eine Zelle um zu formatieren.

Hoffe ihr wisst wie ichs meine.

Merci.

Kann man JTables schachteln?
Das dürfte etwas kompliziert werden, aber möglich ist es.

d.h. in eine Zelle eine neue JTable reinpacken. Muss das / Wie muss das in der setValueAt-Methode angegeben werden?
Gar nicht. Die Werte werden vom Model verwaltet, die Darstellung jedoch vom Renderer. Du wirst also einen eigenen TableCellRenderer schreiben müssen, der als Komponente für eine einzelne Zelle wiederrum eine eigene Tabelle generiert.

Generell als Einführung immer gut:

How to use tables

Die Einführung ist gut. Danke. Mal sehn, vielleicht finde ich ne andere Darstellungslösung.

Ein eigener TabelCellRenderer übersteigt meinen momentanen Wissensstand etwas. Bin ja noch Anfänger.

Man kann also auch keine anderen Swing-Komponenten wie Labels oder so wohl auch nicht in eine Zelle packen... verstehe ich das richtig?

Dann muss ich wohl die Formatierung über JPanes oder andere Komponenten machen und die über ne Schleife dynamisch erzeugen (weiss ja vorher nicht wie viele Werte es sind). Hoffe das klappt.

Man kann also auch keine anderen Swing-Komponenten wie Labels oder so wohl auch nicht in eine Zelle packen... verstehe ich das richtig?
Du kannst als Tabellenzelle jede beliebige Swing Komponente verwenden.

Die Standard-Darstellung ist nichts anderes als ein JLabel.

Aber als Wert innerhalb des Models benutzt du keine Komponenten direkt, sondern ein beliebiges (Daten-)Objekt.

Erst der Renderer generiert dann zu diesem Objekt die darstellende Komponente.

Jetzt verstehe ich auch den "Sinn" dieser Renderer. Ob ich mich deshalb gleich draufstürze... hmmm.

Danke jedenfalls. Hast sehr geholfen.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.