TableColumn Breite setzen

M

MisterX

Gast
Hi, ich hocke gerade irgendwie auf dem Schlauch.

Folgendes: Ich habe eine Klasse xy. In der Klasse wird eine GUI angelegt.
Nun möchte ich in eine JTable die Maße der Spalten definieren.
Das mache ich auf normalen Weg so:

Im Konstuktor:
Java:
TableColumn col = table.getColumnModel().getColumn(0);
col.setMaxWidth(30);

Jetzt möchte ich das nicht 15 Mal schreiben, sondern eine Methode dafür benutzen (Mit einer Schleife).
Ungefähr so:
Java:
	public void spaltenbreite(int spalte, int laenge) {
		TableColumn col = table.getColumnModel().getColumn(spalte);
		col.setMaxWidth(laenge);
	}

Das geht jetzt so nicht. Kann ich so einen Fall überhaupt lösen?
 
Zuletzt bearbeitet von einem Moderator:
S

SlaterB

Gast
doch es geht so bzw. du unterläßt es den Fehler zu beschreiben, da kann man kaum helfen,
wenn die Variable table unbekannt ist muss sie z.B. als Parameter auch übergeben werden usw.

ich habe eine Methode

Java:
    /**
     * Setzt die Spaltenbreiten in einer JTable.
     * 
     * @param table
     * @param sizes
     */
    public static void setColumnSizes(JTable table, int... sizes) {
        for (int i = 0; i < sizes.length; i++)  {
            TableColumn col = table.getColumnModel().getColumn(i);
            col.setPreferredWidth(sizes[i]);
        }
    }
 

Michael...

Top Contributor
bis jetzt hast Du ja nur die zwei Zeilen in eine Methode ausgelager, was erst mal wenig Sinn macht.
Wenn ich's richtig verstanden habe soll mittels einer Methode die selbe Spaltenbreite für alle Spalten gesetzt werden, dafür muss man einfach nur mittels Schleife über die TableColumns des TableColumnModels iterieren und die Breite setzen. Alle dazu notwendigen Informationen liefert das TableColumnModel
 
M

MisterX

Gast
Danke es funzt. Hab die ganze Nacht an dem Ding rumgemacht.
Es hat nur gefehlt das ich die JTable mitübergebe.
Ich verstehe zwar nicht warum ich das machen muss. Denn in der Klasse habe ich ja
per "private JTable table" die "table" schon bekannt gemacht.
Dann müsste er doch die table in der Methode schon kennen?

Jetzt brauch ich erstmal einen kaffee.
 
S

SlaterB

Gast
per "private JTable table" die "table" schon bekannt gemacht.
Dann müsste er doch die table in der Methode schon kennen?
weiterhin treibst du dir, gewollt oder nicht, Späße anderen Informationen vorzuenthalten

- kompiliert der Code ja oder nein? wenn nicht dann gibt es kein entsprechendes Attribtut, dann bist du vielleicht in einer anderen Klasse
- wenn es kompiliert was ist exakt der Fehler, passiert einfach nichts oder gibt es eine Exception, vielleicht eine NullPointerException?
bei letzteren wäre ein Standardfehler zu vermuten, dass das Attribut null verbleibt, in der Initialisierung eine gleichnamige lokale Variable angelegt wird

alles ist durch ausführliche Informationen und Code posten zu klären,
nur komische Fragen zu stellen hilft dagegen nicht weiter..
 
M

MisterX

Gast
Sorry, ich will hier keine Späße treiben. Bin nur völlig übermüdet. Ich will auch keine 300 Zeilen Code hier posten, wo die Hälfte keine Rolle spielt.

wenn es kompiliert was ist exakt der Fehler, passiert einfach nichts oder gibt es eine Exception, vielleicht eine NullPointerException?
bei letzteren wäre ein Standardfehler zu vermuten, dass das Attribut null verbleibt, in der Initialisierung eine gleichnamige lokale Variable angelegt wird
Hab jetzt nochmal nachgeschaut. Es ist in der Tat eine NullPointer Exception.

Ich kürze mal den Code aufs wesentliche. Es wäre mir hilfreich zu verstehen, wie das mit deiner Aussage und dem Attribut null zu Verstehen ist.
 
S

SlaterB

Gast
Java:
public class Test {
    JLabel a;
    JLabel b;

    public Test() {
        a = new JLabel("a");
        JLabel b = new JLabel("b");
        test2();
    }

    private void test2()  {
        // a ist hier ein JLabel
        // b ist null
    }
}
 
M

MisterX

Gast
Ok.
Vielen Dank für das Beispiel.
So ist es für mich super verständlich. Jetzt hab ich es geschluckt.

Nochmals vielen Dank für die Hilfe und sorry wenn ich irgendwie verplant war.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
H Probleme, TableColumn-Breite zu setzen Java Basics - Anfänger-Themen 4
r4w TableColumn Bindings Frage Java Basics - Anfänger-Themen 7
U Breite von Textfeldern trotz Layoutmanager Java Basics - Anfänger-Themen 4
krgewb Breite und Höhe eines Bildes in base64 auslesen Java Basics - Anfänger-Themen 3
T TextField Breite automatisch gebunden Java Basics - Anfänger-Themen 8
AnnaBauer21 GridBagLayout JLabel weightx: Unterschiedliche Breite mit & ohne Text Java Basics - Anfänger-Themen 6
J Breite eines Strings bestimmen Java Basics - Anfänger-Themen 4
P Shape Zeichnen klappt nicht - einlesen der Breite/Höhe schon Java Basics - Anfänger-Themen 1
T Ändern der Breite eines Zeichens Java Basics - Anfänger-Themen 3
M Die Breite bei der Gui richtig setzen. Java Basics - Anfänger-Themen 1
D Probleme bei der Column-Breite einer JTable Java Basics - Anfänger-Themen 4
E Breite des Schiebers in JscrollPane verändern Java Basics - Anfänger-Themen 2
R JTable Column Breite bei Veränderung registrieren Java Basics - Anfänger-Themen 2
D JMenuBar Breite ? Java Basics - Anfänger-Themen 3
dummy2 Negative Höhe / Breite bei Figuren Java Basics - Anfänger-Themen 2
dummy2 Breite / Höhe Java Basics - Anfänger-Themen 4
R Noch eine Frage: Breite des Applets im Browser ermitteln Java Basics - Anfänger-Themen 7
M Breite von String für Serverseitige nutzung Berechnen Java Basics - Anfänger-Themen 3
C Anker Punkt setzen. Java Basics - Anfänger-Themen 1
J neues Object (JLabel) vorab zum Layout hinzufügen , Location setzen, etc? Java Basics - Anfänger-Themen 2
H Ein übergegebenes Objekt auf null setzen Java Basics - Anfänger-Themen 9
B Semaphoren in Abhängigkeit an Bedingungen richtig setzen Java Basics - Anfänger-Themen 3
L Methode in setText() setzen Java Basics - Anfänger-Themen 6
L Anzahl der benachbarten Minen berechnen und setzen Java Basics - Anfänger-Themen 15
S NIO lesbares und beschreibbares Attribut setzen Java Basics - Anfänger-Themen 1
C Array-Eintrag wieder auf Null setzen Java Basics - Anfänger-Themen 3
D Abstrakte Klasse, Konstruktorkette, Attribute setzen Java Basics - Anfänger-Themen 12
D Best Practice Konvention - Klassenmembers auf null setzen? Java Basics - Anfänger-Themen 2
F In Eclipse Haltepunkt bei Event setzen? Java Basics - Anfänger-Themen 1
das_leon JOptionPane Titel setzen Java Basics - Anfänger-Themen 1
P Cursor in JTextField setzen Java Basics - Anfänger-Themen 11
N wert für progress auf 100% setzen Java Basics - Anfänger-Themen 5
M Binären Baum Kinder setzen Java Basics - Anfänger-Themen 12
F Koordinaten nach 360° auf 0° setzen Java Basics - Anfänger-Themen 2
I Prozessname setzen Java Basics - Anfänger-Themen 8
S Das Anführungszeichen(") Zeichen in einen String setzen Java Basics - Anfänger-Themen 1
R Property Value als null setzen Java Basics - Anfänger-Themen 1
C Klassen Positionszähler auf Buchstaben setzen Java Basics - Anfänger-Themen 14
M Umgebungsvariable JDK/JRE? PATH setzen Java Basics - Anfänger-Themen 5
N Server Zeit zur lokalen Zeit setzen. Java Basics - Anfänger-Themen 0
S Classpath Findet die Klasse nicht classpath setzen? Java Basics - Anfänger-Themen 8
F Erste Schritte Label Text vor Methodenaufruf setzen Java Basics - Anfänger-Themen 17
I Date zu 01.01.<year> setzen Java Basics - Anfänger-Themen 1
M zufälliges Setzen von Schiffen in while klappt nicht immer Java Basics - Anfänger-Themen 3
C [Greasmonkey] Maus Coursor position setzen Java Basics - Anfänger-Themen 1
K Selbst renderndes Object auf null setzen Java Basics - Anfänger-Themen 1
M Umgebungsvariable JFileChooser#setCurrentDirectory via Properties setzen? Java Basics - Anfänger-Themen 5
M Wann PATH und wann JAVA_HOME in Windows System 7 setzen? Java Basics - Anfänger-Themen 2
X Vererbung Setzen auf Null bei Subklassen Java Basics - Anfänger-Themen 2
N Fokus setzen nachdem JFrame in Vordergrund geholt wurde Java Basics - Anfänger-Themen 7
I Variablen Wie initialisiert man in Java eine Variable ohne das Setzen von 0 oder einer anderen Zahl? Java Basics - Anfänger-Themen 8
H JPanel Hintergrund transparent setzen? Java Basics - Anfänger-Themen 10
R Classpath Setzen von class Verzeichnissen Java Basics - Anfänger-Themen 2
H KeyListener auf ganzes Fenster setzen Java Basics - Anfänger-Themen 14
Ernesto95 BufferedImage Teilbereich wieder transparent setzen Java Basics - Anfänger-Themen 16
Jagson Dotcom Spiel - Dots Random setzen Java Basics - Anfänger-Themen 8
S Ermitteln und Setzen der Attribute eines Objektes Java Basics - Anfänger-Themen 6
N Erste Schritte Tausender Trennzeichen setzen Java Basics - Anfänger-Themen 5
J JRadioButton in JTable setzen Java Basics - Anfänger-Themen 4
A JLabel erst auf null dann auf einen Wert setzen Java Basics - Anfänger-Themen 7
H Panel in Variable setzen möglich? Java Basics - Anfänger-Themen 10
Helgon Focus setzen Java Basics - Anfänger-Themen 6
E Erste Schritte AbstractTableModel Werte setzen mit setValueAt Java Basics - Anfänger-Themen 10
B eclipse Oberfläche zurück setzen Java Basics - Anfänger-Themen 2
C Leerzeichen im char Array setzen Java Basics - Anfänger-Themen 33
L Methoden In einer Klasse ein Attribut aus einer anderen Klasse setzen Java Basics - Anfänger-Themen 8
M Monat setzen Java Basics - Anfänger-Themen 18
Fab1 Buttons auf ein Hintergrundbild(JFrame) setzen Java Basics - Anfänger-Themen 24
U Passwort auf JButton setzen. Java Basics - Anfänger-Themen 2
M JAVA_HOME setzen xubuntu Java Basics - Anfänger-Themen 2
S Input/Output Neuen InputStream System.in setzen Java Basics - Anfänger-Themen 11
K JTable AbstractTableModel Header setzen Java Basics - Anfänger-Themen 6
L Applet: Parameter setzen Java Basics - Anfänger-Themen 12
M Image Metadaten setzen Java Basics - Anfänger-Themen 2
M HttpPut mimeType setzen Java Basics - Anfänger-Themen 2
E Titel und Größe vom JFrame setzen Java Basics - Anfänger-Themen 6
Z Fokus auf anderes Programm setzen Java Basics - Anfänger-Themen 3
S import - Anweisung; Setzen der Classpath Java Basics - Anfänger-Themen 2
N Objectnamen neu setzen? Java Basics - Anfänger-Themen 20
G Verzeiflung bei JDateChooser Datum setzen Java Basics - Anfänger-Themen 3
J Elegante Art mehrere Label mit einem icon zu setzen Java Basics - Anfänger-Themen 13
J JAVA_HOME und path setzen bei windows 7 Java Basics - Anfänger-Themen 5
radiac Datentypen RANDOM-punkt setzen INNERHALB eines BEREICHes Java Basics - Anfänger-Themen 2
D Classpath setzen Java Basics - Anfänger-Themen 4
W Koordinaten mit System.in.read() setzen Java Basics - Anfänger-Themen 2
J jComboBox auf default setzen wie? Java Basics - Anfänger-Themen 3
C Schach(matt) setzen Java Basics - Anfänger-Themen 13
D JFrame Icon setzen? Java Basics - Anfänger-Themen 8
L Lucene Classpath unter linux setzen Java Basics - Anfänger-Themen 8
H Farbe setzen Java Basics - Anfänger-Themen 5
J Klassen richtig in Relation setzen Java Basics - Anfänger-Themen 3
B Classpath setzen - UNTER MAC OS X Java Basics - Anfänger-Themen 2
R jLabel lässt sich nicht public setzen?? Java Basics - Anfänger-Themen 15
S JRadioButton - Wert setzen aus Datenbank Java Basics - Anfänger-Themen 4
N Exception richtig setzen Java Basics - Anfänger-Themen 2
S Schleife und farbwerte setzen Java Basics - Anfänger-Themen 8
S setrgb () setzen von farbwerte Java Basics - Anfänger-Themen 4
R Enum und dann setter Setzen? Java Basics - Anfänger-Themen 44
S Pixel auf Screen setzen Java Basics - Anfänger-Themen 4
J Dateipfade systemunabhängig setzen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben