1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

JTable ( Java ) Spaltengöße ( breite ) automatisch

Discussion in 'Programmieren' started by bastelhamster1, Nov 4, 2007.

Thread Status:
Not open for further replies.
  1. Hallo,
    gibt es in JAVA die Möglichkeit,
    die Spaltengröße ( breite ) in einer JTable automatisch an
    den größten Eintrag in einer Spalte anzupasen???

    Und gibt es weiterhin die Möglichkeit,
    die Spaltengröße ( breite ) "feste" festzulegen???
     
  2. L-ectron-X

    L-ectron-X Guest

    Zum ersten Teil deiner Frage:
    Nein, zumindest keinen von Java vordefinierten. Dazu müsstest du das TableModel nach dem längsten Eintrag durchsuchen und in Abhängigkeit der eingestellten Schriftart (Font, FontMetrics) noch vor dem Zeichnen der JTable die Spaltenbreite setzen.

    Zum zweiten Teil deiner Frage:
    Die Spaltenbreite wird über das TableColumnModel gesetzt.
    Wenn deine Klasse von JTable erbt machst du das im Konstruktor deiner Klasse, ansonsten besorgst du dir das TableColumnModel deiner JTable-Instanz mit
    Code:
    TableColumnModel colModel = myTable.getColumnModel();
    Mit
    Code:
    colModel.getColumn(0).setPreferredWidth(150);
    setzt du dann bspw. die Spaltenbreite der ersten Spalte auf 150 Pixel.
     
Thread Status:
Not open for further replies.

Share This Page