entweder diese nicht existiert, oder ich denke nicht/Suche richtig, weil es spät ist ...Setzen eines Wertes Prototyp (für Auto-Breitenberechnung) einer JTable Spalte
Ich möchte ein JTable setzen Spaltenbreite in Swing basierend auf einem Prototypwert für die größte Zeichenfolge, die ich in einer bestimmten Spalte erwarten (oder wissen) kann. Ich kenne die Anzahl der Pixel nicht, da ich die Schriftart zur Kompilierzeit nicht unbedingt kenne.
Gibt es eine Möglichkeit, einen Prototyp-Wert für die Spaltenbreite zu setzen, wie es für Zeilenhöhe Zwecke gibt? Wenn das so ist, wie?
oh, das ist schlau. Kann ich sicher sein, dass die Einträge in JLabel und in der Tabellenspalte dieselbe Schriftart verwenden? –
Es hängt wahrscheinlich davon ab, welche Schriftart Ihr TableCellRenderer verwendet. Wenn Sie Zugriff auf die Renderer hatten und diese auch von JLabel stammten, könnten Sie Ihre Prototype-Beschriftung mit der gleichen Schriftart erstellen: JLabel prototypeLabel = new JLabel ("Not Applicable"); prototypeLabel.setFont (cellRenderer.getFont()) – Andrew
-1 Es ist keine gute Idee, eine Arbitrary-Komponente zum Messen der Größe zu verwenden. Verwenden Sie stattdessen die Rendering-Komponente wie in der Tabelle – kleopatra