Dynamisches füllen von GridBagLayout: Größe der Komponenten

Status
Nicht offen für weitere Antworten.

jule

Mitglied
Hallo,

ich habe folgendes Problem: ich fülle dynamisch ein JPanel (mit GridBagLayout). Die Anzahl der Kompineneten in dem Panel wird auch dynamisch zur Laufzeit berechnet. Nun möchte ich die Größen der Komponenten festsetzen, damit meine JScrollPane auch "anspringt". Hab schon alles probiert, was mir irgendwie eingefallen ist, aber das geht irgendwie alles nicht ???:L
Bis jetzt habe ich das folgendermaßen gemacht:
Die GridBagConstraints anlegen:

Code:
private GridBagConstraints getGridBagConstraint(int x, int y){
		
		GridBagConstraints gbcLGen = new GridBagConstraints();
		
		gbcLGen.weightx = 1.0;
		gbcLGen.weighty = 1.0;
		gbcLGen.fill = GridBagConstraints.BOTH;
		gbcLGen.anchor = GridBagConstraints.CENTER;
		gbcLGen.gridx = x;
		gbcLGen.gridy = y;
		gbcLGen.insets = new Insets(0,10,10,0);
		gbcLGen.ipadx = 2;
		gbcLGen.ipady = 2;
		
		return gbcLGen;
	}

und die Jlabels definieren:

Code:
public JLabel getLGenValue(String text){
		JLabel gen = new JLabel();
		gen.setText(text);
		gen.setPreferredSize(new Dimension(80,23));
		gen.setMinimumSize(new Dimension(80,20));
		gen.setMaximumSize(new Dimension(80,30));
		gen.setFont(Constants.SUBLINES);
		gen.setHorizontalAlignment(SwingConstants.CENTER);
		
		return gen;
	}

dann füge ich das per panel.add(getLGenValue(String text), getGridBagConstraint(int x, int y)) in mein Panel ein.

Zur Laufzeit wird dann, wenn es zu viele Labels werden, so weit zusammengeschoben, dass sie nicht mehr lesbar sind...



Vielen Dank im Voraus!
 

jule

Mitglied
Hab noch versessen zu posten, wie mein Panel aussieht:

Code:
JPanel panel = new JPanel();
		panel.setSize(700,700); 
		panel.setPreferredSize(new Dimension(700,700));
		panel.setMinimumSize(new Dimension(700,700));
		panel.setMaximumSize(new Dimension(700,700));
		GridBagLayout gl = new GridBagLayout();
		gl.maximumLayoutSize(panel);
		gl.minimumLayoutSize(panel);
 
B

Beni

Gast
Ich geh mal davon aus, dass du das Panel korrekt in das JScrollPane gesetzt hast?

Dann fällt mir nur das ein: indem du beim "panel" die preferredSize setzt, sagst du dem Panel, dass es alle Werte von seinem Layout ignorieren soll. Indirekt sagst du damit auch dem JScrollPane, dass das Panel immer gleich gross sein soll.

Versuche die minimum/preferred/maximum-size so selten wie möglich von Hand zu setzen; denn es ist die Aufgabe der LayoutManager diese Grössen dynamisch zu berechnen.
 

jule

Mitglied
Hm, das hatte ich auch schon probiert. Dann verkleinert er das Panel insgesamt. Ich habe in meinem Container noch ein anderes Panel, das dann fast den gesamten Raum einnimmt, wenn ich dem betreffenden Panel nicht die Größen zuweise.
Vielleicht stimmt auch doch was beim hinzufügen des Panels in die Scrollpane nicht. Sieht bei mir so aus:

Code:
JScrollPane jsp = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
   	 	jsp.setSize(700,700);
   	 	cp.add(jsp,BorderLayout.WEST);
 

jule

Mitglied
Also ich habe jetzt rausgefunden, warum meine Scrollpane nicht anspringt. Du hattest recht, ich war so doof und habe die Maximumsize des Panels auf 700 gesetzt, dann macht er sie natürlich nicht größer. Allerdings musste ich, damit das Ganze greift die preferredsize rausnehmen. Und jetzt macht er mir je nach dem wie groß das Panel mit dem GridBagLayout ist das andere Panel ganz breit oder extrem schmal.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
U dynamisches JTree erstellen AWT, Swing, JavaFX & SWT 2
D Swing Dynamisches Dialog UI AWT, Swing, JavaFX & SWT 8
B 2D-Grafik Dynamisches Erstellen von Images und deren Animation AWT, Swing, JavaFX & SWT 4
M Swing Dynamisches Layout AWT, Swing, JavaFX & SWT 10
T dynamisches Koordinatenkreuz mit scalierung AWT, Swing, JavaFX & SWT 7
C Scollpane an dynamisches GridLayout anpassen? AWT, Swing, JavaFX & SWT 3
L Swing dynamisches Image-Panel in Layout einbinden AWT, Swing, JavaFX & SWT 10
N Swing Dynamisches Verhalten bei Änderung Fenstergröße AWT, Swing, JavaFX & SWT 6
trash Dynamisches Interface AWT, Swing, JavaFX & SWT 6
H LayoutManager Dynamisches Layout AWT, Swing, JavaFX & SWT 3
T Swing Dynamisches Bild AWT, Swing, JavaFX & SWT 8
T RCP-SWT dynamisches ScrolledComposite AWT, Swing, JavaFX & SWT 2
B dynamisches Spektrogramm in Java-Webanwendung AWT, Swing, JavaFX & SWT 3
G LookAndFeel Dynamisches Einlesen von LookAndFeels - NullPointerException AWT, Swing, JavaFX & SWT 4
M Dynamisches generieren und ausrichten von Komponenten AWT, Swing, JavaFX & SWT 11
T Dynamisches hinzufügen und entfernen von Bildern AWT, Swing, JavaFX & SWT 3
L Dynamisches Ändern der Größe in JPanel mit paint()-Methode AWT, Swing, JavaFX & SWT 8
S GUI, dynamisches Wechseln von JPanels in einem JFrame AWT, Swing, JavaFX & SWT 2
L Dynamisches Erzeugen eines Button AWT, Swing, JavaFX & SWT 2
M Schwieriges Label - Font - Problem "Dynamisches Label&a AWT, Swing, JavaFX & SWT 7
C Dynamisches Zuweisen von Daten an eine JTable zur Laufzeit AWT, Swing, JavaFX & SWT 4
C ActionListener für dynamisches Menü AWT, Swing, JavaFX & SWT 8
B Jlist füllen AWT, Swing, JavaFX & SWT 4
T Bild in ein graphics füllen AWT, Swing, JavaFX & SWT 2
izoards JavaFX TableView mit Array Inhalt füllen AWT, Swing, JavaFX & SWT 1
maximizer JavaFX Accordion mit eigenen TitledPanes füllen AWT, Swing, JavaFX & SWT 0
W TableView füllen AWT, Swing, JavaFX & SWT 18
P JavaFx - Progressbar - Füllen mittels mehreren Tasks AWT, Swing, JavaFX & SWT 0
D Columns unabhängig voneinander mit Daten füllen JavaFx AWT, Swing, JavaFX & SWT 1
J Fenster mit Inhalten aus einem Array Füllen AWT, Swing, JavaFX & SWT 4
G JTable füllen AWT, Swing, JavaFX & SWT 1
F JavaFX Tabelle mit Daten füllen AWT, Swing, JavaFX & SWT 9
W JavaFX Tabelle zeilenweise mit Werten füllen und an Container anpassen AWT, Swing, JavaFX & SWT 23
J ObservableList wirft exception beim zweiten füllen. AWT, Swing, JavaFX & SWT 4
L Methode zum Füllen einer ComboBox AWT, Swing, JavaFX & SWT 4
A JTable mit Daten füllen AWT, Swing, JavaFX & SWT 1
F JavaFX ListView füllen in Controller Class AWT, Swing, JavaFX & SWT 12
K Swing JComboBox mit ArrayList füllen AWT, Swing, JavaFX & SWT 4
N JavaFX Füllen von ausgewählten Pfadelementen AWT, Swing, JavaFX & SWT 1
D Textfield bei starten füllen. AWT, Swing, JavaFX & SWT 5
S JComboBox aus anderer Klasse füllen (Java-Swing) AWT, Swing, JavaFX & SWT 0
E Panel mit Leben füllen AWT, Swing, JavaFX & SWT 2
D Graphics2D einen Bereich füllen AWT, Swing, JavaFX & SWT 1
O Swing JTable per Scrollen füllen! AWT, Swing, JavaFX & SWT 7
H Quadrate dnamisch erzeugen und beliebig füllen AWT, Swing, JavaFX & SWT 7
C Swing ImageIcon mit Bild aus Temp-Verzeichniss füllen AWT, Swing, JavaFX & SWT 15
J JEditorPane mit HTML füllen AWT, Swing, JavaFX & SWT 2
O JComboBox mit ArrayList füllen AWT, Swing, JavaFX & SWT 3
1 Liste mit Objekten Füllen AWT, Swing, JavaFX & SWT 7
S Swing JComboBox mit Datenbank füllen AWT, Swing, JavaFX & SWT 16
I Jlist dynamisch aus Datenbank füllen AWT, Swing, JavaFX & SWT 14
M JList mit 2-zeiligen Objekten füllen AWT, Swing, JavaFX & SWT 7
H JTable von anderer Klasse aus füllen AWT, Swing, JavaFX & SWT 6
C SWT Combobox mit Textdatei füllen AWT, Swing, JavaFX & SWT 2
P Swing JtextArea füllen mit setText AWT, Swing, JavaFX & SWT 7
S JComboBox mit Ergebnis einer SQL Abfrage füllen AWT, Swing, JavaFX & SWT 39
X JTable mit verschiedenen Objekten füllen AWT, Swing, JavaFX & SWT 14
C JFrame - Löschen und neu füllen AWT, Swing, JavaFX & SWT 9
C JList mit Vector füllen AWT, Swing, JavaFX & SWT 3
Ollek Realisierung: JTable zur Laufzeit mit neuen Daten füllen AWT, Swing, JavaFX & SWT 3
S Swing JTextArea während der Laufzeit füllen AWT, Swing, JavaFX & SWT 5
F Fläche invertiert füllen AWT, Swing, JavaFX & SWT 2
A Swing JTable spaltenweise füllen AWT, Swing, JavaFX & SWT 3
R Excpetion füllen/entleeren von JTable AWT, Swing, JavaFX & SWT 6
E Swing JLabel mit unicode füllen AWT, Swing, JavaFX & SWT 7
B JTabbedPane mit Enumeration dynamisch füllen AWT, Swing, JavaFX & SWT 5
K TableModel mit Daten aus Datenbank füllen AWT, Swing, JavaFX & SWT 7
M Liste mittels SwingWorker füllen klappt nicht AWT, Swing, JavaFX & SWT 10
M GridBagLayout zeilenweise füllen AWT, Swing, JavaFX & SWT 5
H Swing Tabelle nach Klick auf Button mit Daten füllen? AWT, Swing, JavaFX & SWT 2
Airwolf89 Swing Exception beim Füllen einer Tabelle AWT, Swing, JavaFX & SWT 10
E JCombobox mit Daten aus DB füllen AWT, Swing, JavaFX & SWT 9
Ollek JTable - Tabelle füllen mit einer ArrayList AWT, Swing, JavaFX & SWT 22
L JTree Selektion "füllen" AWT, Swing, JavaFX & SWT 4
N Textfeld füllen sobald es den Fokus verliert AWT, Swing, JavaFX & SWT 2
U JTable mit Daten aus einer HashMap füllen AWT, Swing, JavaFX & SWT 8
S JTree mit Daten aus Model füllen, eigenes TreeModel (gute Dokumentation des Problems) AWT, Swing, JavaFX & SWT 2
C JList: Eintrag anklicken & JTextfield mit Text aus MySQL füllen? (Screenshot dabei) AWT, Swing, JavaFX & SWT 8
F JList füllen mit LinkedList-Elementen AWT, Swing, JavaFX & SWT 21
Spot84 jtable mit checkboxnode dynamisch per arraylist füllen AWT, Swing, JavaFX & SWT 8
J jTabbedPane mit jPanel füllen AWT, Swing, JavaFX & SWT 14
N Gridlayout 2. Spalte füllen AWT, Swing, JavaFX & SWT 4
M jLabel mit Bild füllen? AWT, Swing, JavaFX & SWT 7
B Einfaches JScrollPane mit Bildern füllen AWT, Swing, JavaFX & SWT 2
ABstraCT JCombobox dynamisch füllen (erstes Element Problem) AWT, Swing, JavaFX & SWT 4
G Jpanel mit Hintergrundbild füllen? AWT, Swing, JavaFX & SWT 6
G jTable, spezille Zelle automatisch füllen AWT, Swing, JavaFX & SWT 13
P JTable/Model füllen mit Fortschrittsbalken, Var. Rückgabetyp AWT, Swing, JavaFX & SWT 2
M JList: wie füllen? AWT, Swing, JavaFX & SWT 2
O JTable mit objekt-daten füllen AWT, Swing, JavaFX & SWT 4
G jList mit ArrayList füllen AWT, Swing, JavaFX & SWT 3
G JTable aus Datenbank füllen AWT, Swing, JavaFX & SWT 4
G JTable Zeile mit Farbe füllen AWT, Swing, JavaFX & SWT 2
B Bild(pixel) füllen AWT, Swing, JavaFX & SWT 6
S JTree mit eigenen Objekten füllen AWT, Swing, JavaFX & SWT 4
A Beim Füllen von JList entsteht ein komisches Phänomen AWT, Swing, JavaFX & SWT 3
G Jtable mittels Liste füllen AWT, Swing, JavaFX & SWT 3
A JListe mit Daten füllen AWT, Swing, JavaFX & SWT 3
A Textfeld nach ereigniss füllen AWT, Swing, JavaFX & SWT 7
M JList mit unbestimmter Anzahl Panels füllen AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen


Oben