LayoutManager TextField verschwindet / wird klein

selmaohneh

Mitglied
Moin!

Ich habe mit WindowBuilder eine GUI erstellt, die in der Vorschau auch ganz gut aussieht und auf meinem Arbeitsrechner auch nach dem kompilieren.
Es gibt jedoch ein seltsames Problem. Die Vorschau vom Windowbuilder scheint nicht sehr genau zu sein. Mache ich das JPanel zum Beispiel kleiner, aber so, dass die Textfield im Fenster immer noch passen, dann ziehen sich die Textfields auf meine minimale Größe zusammen (siehe Bild). Das gleiche passiert auf meinem Heimrechner, obwohl ich die Version geöffnet habe, die nach dem kompilieren auf dem Arbeitsrechner gut aussah, also ohne Zusammenziehen.

Kenn jemand diesen Fehler und kann mir helfen?

Danke!
 

Anhänge

  • Unbenannt.gif
    Unbenannt.gif
    25,1 KB · Aufrufe: 37

Lodoss

Aktives Mitglied
ohne den sourcecode wird das nix
warscheinlich macht der layoutmanager nicht was er soll, aber dafür müsst ich erstmal wissen welcher da überhaupt drauf ist
 
Zuletzt bearbeitet:

selmaohneh

Mitglied
Moin!

Mein Layoutmanager ist WindowBuilder für Eclipse. Hier ist der Code für das GUI auf dem Foto. Hoffe, dass jemand den Fehler findet. Vielen Dank!

Java:
import java.awt.BorderLayout;


public class NeuesSpiel extends JFrame {

	private JPanel contentPane;
	private JTextField txtK;
	private JTextField txtD;
	private JTextField txtA;
	private JTextField txtK_1;
	private JTextField txtD_1;
	private JTextField txtA_1;
	private JTextField txtMinuten;
	private JTextField txtKills;
	private JTextField txtDeaths;
	private JTextField txtAssists;
	private JCheckBox chckbxJoost;


	/**
	 * Create the frame.
	 */
	public NeuesSpiel(final Spieler cello,final Spieler whisky,final Spieler joost) {
		addWindowListener(new WindowAdapter() {
			@Override
			public void windowClosing(WindowEvent arg0) {
				dispose();
				try {
					LoLKasse hauptfenster = new LoLKasse(cello, whisky, joost);
					hauptfenster.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
		setResizable(false);
		setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
		setBounds(100, 100, 372, 192);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		setContentPane(contentPane);
		GridBagLayout gbl_contentPane = new GridBagLayout();
		gbl_contentPane.columnWidths = new int[]{23, 47, 0, 0};
		gbl_contentPane.rowHeights = new int[]{14, 20, 20, 20, 20, 23, 0};
		gbl_contentPane.columnWeights = new double[]{0.0, 0.0, 0.0, Double.MIN_VALUE};
		gbl_contentPane.rowWeights = new double[]{0.0, 0.0, 0.0, 0.0, 0.0, 0.0, Double.MIN_VALUE};
		contentPane.setLayout(gbl_contentPane);
		
		JLabel lblCello = new JLabel("Cello");
		GridBagConstraints gbc_lblCello = new GridBagConstraints();
		gbc_lblCello.anchor = GridBagConstraints.NORTH;
		gbc_lblCello.insets = new Insets(0, 0, 5, 5);
		gbc_lblCello.gridx = 0;
		gbc_lblCello.gridy = 0;
		contentPane.add(lblCello, gbc_lblCello);
		
		JLabel lblWhisky = new JLabel("Whisky");
		GridBagConstraints gbc_lblWhisky = new GridBagConstraints();
		gbc_lblWhisky.anchor = GridBagConstraints.NORTH;
		gbc_lblWhisky.insets = new Insets(0, 0, 5, 5);
		gbc_lblWhisky.gridx = 1;
		gbc_lblWhisky.gridy = 0;
		contentPane.add(lblWhisky, gbc_lblWhisky);
		
		txtK = new JTextField();
		txtK.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtK.selectAll();
			}
		});
		
		chckbxJoost = new JCheckBox("Joost");
		GridBagConstraints gbc_chckbxJoost = new GridBagConstraints();
		gbc_chckbxJoost.insets = new Insets(0, 0, 5, 0);
		gbc_chckbxJoost.gridx = 2;
		gbc_chckbxJoost.gridy = 0;
		contentPane.add(chckbxJoost, gbc_chckbxJoost);
		txtK.setHorizontalAlignment(SwingConstants.CENTER);
		txtK.setText("Kills");
		txtK.setColumns(10);
		GridBagConstraints gbc_txtK = new GridBagConstraints();
		gbc_txtK.anchor = GridBagConstraints.NORTH;
		gbc_txtK.insets = new Insets(0, 0, 5, 5);
		gbc_txtK.gridx = 0;
		gbc_txtK.gridy = 1;
		contentPane.add(txtK, gbc_txtK);
		
		txtK_1 = new JTextField();
		txtK_1.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtK_1.selectAll();
			}
		});
		txtK_1.setHorizontalAlignment(SwingConstants.CENTER);
		txtK_1.setText("Kills");
		txtK_1.setColumns(10);
		GridBagConstraints gbc_txtK_1 = new GridBagConstraints();
		gbc_txtK_1.anchor = GridBagConstraints.NORTH;
		gbc_txtK_1.insets = new Insets(0, 0, 5, 5);
		gbc_txtK_1.gridx = 1;
		gbc_txtK_1.gridy = 1;
		contentPane.add(txtK_1, gbc_txtK_1);
		
		txtD = new JTextField();
		txtD.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtD.selectAll();
			}
		});
		
		txtKills = new JTextField();
		txtKills.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtKills.selectAll();
			}
		});
		txtKills.setText("Kills");
		txtKills.setHorizontalAlignment(SwingConstants.CENTER);
		GridBagConstraints gbc_txtKills = new GridBagConstraints();
		gbc_txtKills.insets = new Insets(0, 0, 5, 0);
		gbc_txtKills.gridx = 2;
		gbc_txtKills.gridy = 1;
		contentPane.add(txtKills, gbc_txtKills);
		txtKills.setColumns(10);
		txtD.setHorizontalAlignment(SwingConstants.CENTER);
		txtD.setText("Deaths");
		txtD.setColumns(10);
		GridBagConstraints gbc_txtD = new GridBagConstraints();
		gbc_txtD.anchor = GridBagConstraints.NORTH;
		gbc_txtD.insets = new Insets(0, 0, 5, 5);
		gbc_txtD.gridx = 0;
		gbc_txtD.gridy = 2;
		contentPane.add(txtD, gbc_txtD);
		
		txtD_1 = new JTextField();
		txtD_1.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtD_1.selectAll();
			}
		});
		txtD_1.setHorizontalAlignment(SwingConstants.CENTER);
		txtD_1.setText("Deaths");
		txtD_1.setColumns(10);
		GridBagConstraints gbc_txtD_1 = new GridBagConstraints();
		gbc_txtD_1.anchor = GridBagConstraints.NORTH;
		gbc_txtD_1.insets = new Insets(0, 0, 5, 5);
		gbc_txtD_1.gridx = 1;
		gbc_txtD_1.gridy = 2;
		contentPane.add(txtD_1, gbc_txtD_1);
		
		txtA = new JTextField();
		txtA.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtA.selectAll();
			}
		});
		
		txtDeaths = new JTextField();
		txtDeaths.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtDeaths.selectAll();
			}
		});
		txtDeaths.setHorizontalAlignment(SwingConstants.CENTER);
		txtDeaths.setText("Deaths");
		GridBagConstraints gbc_txtDeaths = new GridBagConstraints();
		gbc_txtDeaths.insets = new Insets(0, 0, 5, 0);
		gbc_txtDeaths.gridx = 2;
		gbc_txtDeaths.gridy = 2;
		contentPane.add(txtDeaths, gbc_txtDeaths);
		txtDeaths.setColumns(10);
		txtA.setHorizontalAlignment(SwingConstants.CENTER);
		txtA.setText("Assists");
		txtA.setColumns(10);
		GridBagConstraints gbc_txtA = new GridBagConstraints();
		gbc_txtA.anchor = GridBagConstraints.NORTH;
		gbc_txtA.insets = new Insets(0, 0, 5, 5);
		gbc_txtA.gridx = 0;
		gbc_txtA.gridy = 3;
		contentPane.add(txtA, gbc_txtA);
		
		txtA_1 = new JTextField();
		txtA_1.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtA_1.selectAll();
			}
		});
		txtA_1.setHorizontalAlignment(SwingConstants.CENTER);
		txtA_1.setText("Assists");
		txtA_1.setColumns(10);
		GridBagConstraints gbc_txtA_1 = new GridBagConstraints();
		gbc_txtA_1.anchor = GridBagConstraints.NORTH;
		gbc_txtA_1.insets = new Insets(0, 0, 5, 5);
		gbc_txtA_1.gridx = 1;
		gbc_txtA_1.gridy = 3;
		contentPane.add(txtA_1, gbc_txtA_1);
		
		txtMinuten = new JTextField();
		txtMinuten.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtMinuten.selectAll();
			}
		});
		
		txtAssists = new JTextField();
		txtAssists.addFocusListener(new FocusAdapter() {
			@Override
			public void focusGained(FocusEvent arg0) {
				txtAssists.selectAll();
			}
		});
		txtAssists.setText("Assists");
		txtAssists.setHorizontalAlignment(SwingConstants.CENTER);
		GridBagConstraints gbc_txtAssists = new GridBagConstraints();
		gbc_txtAssists.insets = new Insets(0, 0, 5, 0);
		gbc_txtAssists.gridx = 2;
		gbc_txtAssists.gridy = 3;
		contentPane.add(txtAssists, gbc_txtAssists);
		txtAssists.setColumns(10);
		txtMinuten.setHorizontalAlignment(SwingConstants.CENTER);
		txtMinuten.setText("Minuten");
		txtMinuten.setColumns(10);
		GridBagConstraints gbc_txtMinuten = new GridBagConstraints();
		gbc_txtMinuten.fill = GridBagConstraints.HORIZONTAL;
		gbc_txtMinuten.gridwidth = 3;
		gbc_txtMinuten.anchor = GridBagConstraints.NORTH;
		gbc_txtMinuten.insets = new Insets(0, 0, 5, 5);
		gbc_txtMinuten.gridx = 0;
		gbc_txtMinuten.gridy = 4;
		contentPane.add(txtMinuten, gbc_txtMinuten);
		
		JButton btnEintragen = new JButton("Eintragen");
		btnEintragen.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				dispose();
				cello.gespielt(Double.parseDouble(txtK.getText()), Double.parseDouble(txtD.getText()), Double.parseDouble(txtA.getText()), Double.parseDouble(txtMinuten.getText()));
				whisky.gespielt(Double.parseDouble(txtK_1.getText()), Double.parseDouble(txtD_1.getText()), Double.parseDouble(txtA_1.getText()), Double.parseDouble(txtMinuten.getText()));	
				if(chckbxJoost.isSelected()){
					joost.gespielt(Double.parseDouble(txtKills.getText()), Double.parseDouble(txtDeaths.getText()), Double.parseDouble(txtAssists.getText()), Double.parseDouble(txtMinuten.getText()));	
				}
				try {
					LoLKasse hauptfenster = new LoLKasse(cello, whisky, joost);
					hauptfenster.setVisible(true);
				} catch (Exception e) {
					e.printStackTrace();
				}
			}
		});
		GridBagConstraints gbc_btnEintragen = new GridBagConstraints();
		gbc_btnEintragen.insets = new Insets(0, 0, 0, 5);
		gbc_btnEintragen.fill = GridBagConstraints.HORIZONTAL;
		gbc_btnEintragen.anchor = GridBagConstraints.NORTH;
		gbc_btnEintragen.gridwidth = 3;
		gbc_btnEintragen.gridx = 0;
		gbc_btnEintragen.gridy = 5;
		contentPane.add(btnEintragen, gbc_btnEintragen);
		setFocusTraversalPolicy(new FocusTraversalOnArray(new Component[]{txtK, txtD, txtA, txtK_1, txtD_1, txtA_1,chckbxJoost,txtKills,txtDeaths,txtAssists, txtMinuten, btnEintragen}));
	}
}
 

dzim

Top Contributor
Ähm... WindowBuilder ist nur ein Tool zum erstellen von Oberflächen.
Der LayoutManager ist das GridBagLayout auf deinem JPanel contentPane...

Warum genau dein Textfeld verschwindet, kann ich zwar nicht sagen (verwende aus Prinzip kein Swing mehr :p ), aber ich denke mal, entweder brauchst du da eine MinHeight auf dem TextFeld oder eben dem JPanel selbst. Das Problem ist: Unterschreitest du eine bestimmte Grösse, wirst du irgendwann bei jedem noch so intelligent gebauten Layout auf Grenzen stossen. Es wird dann quasi nicht mehr nutzbar. Du hast dann zwei Möglichkeiten: Setze eine Minmalgrösse des Fesnters, oder akzeptiere, dass irgendwann Items verschwinden. Bei Toolbars oder so kannst du noch gegensteuern und solche Menü-Buttons machen, aber bei komplexen Fenstern wird es irgendwann kompliziert.

Für dein konkretes Swing-Problem, müssen dir aber die anderen hier im Forum helfen. Ich bin da raus.
 

selmaohneh

Mitglied
Konnte mir jetzt behelfen, indem ich jede Komponente auf Grow und Fill gesetzt habe.

Wenn es heute auch auf dem Heimrechner klappt, ist das Thema damit für mich erledigt.

Danke!
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Juelin Eingabensteuerung mit Textfield AWT, Swing, JavaFX & SWT 20
J Eingaben aus Textfield & ComboBox speichern und in ComboBox wieder ausgeben AWT, Swing, JavaFX & SWT 3
K JavaFX Taschenrechner textField auf 10stellen begrenzen AWT, Swing, JavaFX & SWT 26
Z textField.getText = null AWT, Swing, JavaFX & SWT 15
officialmaxl JavaFX Textfield getTextfield() in String speichern AWT, Swing, JavaFX & SWT 1
L Swing Wert vom Textfield in Array List hinzufügen AWT, Swing, JavaFX & SWT 2
R Textfield lässt sich nicht positionieren AWT, Swing, JavaFX & SWT 1
B JavaFX ListView in Kombination mit TextField AWT, Swing, JavaFX & SWT 5
B JavaFX TextField Eingabe in neues Fenster übernehmen AWT, Swing, JavaFX & SWT 4
L JavaFX Ich suche das passende Textfield Event AWT, Swing, JavaFX & SWT 1
Bluedaishi JavaFX JFoenix TextField KeyEvent AWT, Swing, JavaFX & SWT 2
F JavaFX Aktuelle Zeit in einem TextField anzeigen AWT, Swing, JavaFX & SWT 7
F JavaFX textField Ausgabe automatisch kopieren AWT, Swing, JavaFX & SWT 7
M JavaFX String aus TextField reagiert nicht wie erwartet AWT, Swing, JavaFX & SWT 3
S JavaFX TextField auf Datentyp prüfen AWT, Swing, JavaFX & SWT 1
M JavaFX .setCellFactory () mit TextField AWT, Swing, JavaFX & SWT 4
L TextField Listener AWT, Swing, JavaFX & SWT 13
L TextField Eingabe in andere GUI übernehmen AWT, Swing, JavaFX & SWT 1
C JavaFX mit .setText() befülltes Textfield liefert anschließend mit .getText() den ursprünglichen Wert? AWT, Swing, JavaFX & SWT 1
K JavaFX Combobox, Textfield & setOnMouseClicked AWT, Swing, JavaFX & SWT 2
U Java FX Warten auf Textfield eingabe AWT, Swing, JavaFX & SWT 17
G JavaFX - Während AudioRecording keine Text eingabe TextField möglich AWT, Swing, JavaFX & SWT 6
S Buttons und TextField automatisch vergrößern AWT, Swing, JavaFX & SWT 8
Y Listview Textfield vergrößern, Schrift anpassen AWT, Swing, JavaFX & SWT 0
S AWT Daten über TextField und Button in array speichern AWT, Swing, JavaFX & SWT 5
U Eingabe von TextField in variable speichern AWT, Swing, JavaFX & SWT 2
J Eigene Klasse auf Basis Textfield in SceneBuilder anzeigen AWT, Swing, JavaFX & SWT 4
I JavaFX TextField auf Eingabe prüfen AWT, Swing, JavaFX & SWT 3
D JavaFX Nur Zahlen in Textfield AWT, Swing, JavaFX & SWT 4
D Textfield bei starten füllen. AWT, Swing, JavaFX & SWT 5
H Textfield bleibt im Hintergrund AWT, Swing, JavaFX & SWT 2
C JavaFX Zugriff auf TextField aus einer anderen Klasse AWT, Swing, JavaFX & SWT 4
P LayoutManager TextField.setSize(); in einem FlowLayout AWT, Swing, JavaFX & SWT 3
T Internes Event-handling in TextField/JTextField AWT, Swing, JavaFX & SWT 2
O Swing Text aus Textfield auslesen AWT, Swing, JavaFX & SWT 8
1 Textfield: jede Buchstabe ein Bild AWT, Swing, JavaFX & SWT 2
U Swing NullPointerException trotz Referenz auf Textfield & Button AWT, Swing, JavaFX & SWT 6
S Button in Textfield ziehen AWT, Swing, JavaFX & SWT 4
T Einen Variablen Wert in einem TextField AWT, Swing, JavaFX & SWT 4
K Viele Textfield mit Hilfe eines MousListener leeren - möglich? AWT, Swing, JavaFX & SWT 8
F Swing TextField Eingabe in Variable umwandeln um zum Beispiel zu rechnen. AWT, Swing, JavaFX & SWT 3
G JavaFX TextField Eingabe formatieren/einschränken AWT, Swing, JavaFX & SWT 2
C Integer in ein Textfield schreiben. AWT, Swing, JavaFX & SWT 4
P TextField beim klicken von JButton speichern AWT, Swing, JavaFX & SWT 17
C Swing TextField auslesen AWT, Swing, JavaFX & SWT 21
MiMa Integer Zahl in Textfield ausgeben AWT, Swing, JavaFX & SWT 12
K Per Textfield Methode ausführen AWT, Swing, JavaFX & SWT 6
B JComboBox ans Textfield gelangen AWT, Swing, JavaFX & SWT 4
A Größe von Textfield bestimmen AWT, Swing, JavaFX & SWT 9
S JButton und textfield.setText - Komponenten über-/verdecken sich AWT, Swing, JavaFX & SWT 15
T jPanels im jFrame bewegen - Auch ohne Textfield? AWT, Swing, JavaFX & SWT 4
B AWT Mit TextField Zahlen einlesen lassen AWT, Swing, JavaFX & SWT 34
R Textfield auslesen auf Anforderung AWT, Swing, JavaFX & SWT 4
A Button und Textfield AWT, Swing, JavaFX & SWT 4
A TextField und Label AWT, Swing, JavaFX & SWT 8
H gui textfield AWT, Swing, JavaFX & SWT 5
A TextField: Textfeld teilweise editierbar AWT, Swing, JavaFX & SWT 2
R TextField auslesen & in Objekteigenschaften speichern AWT, Swing, JavaFX & SWT 22
E Button in TextField eibetten? AWT, Swing, JavaFX & SWT 4
Screen Focus Problem , KeyListener, TextField , Key AWT, Swing, JavaFX & SWT 4
W textfield zentriert AWT, Swing, JavaFX & SWT 2
N Swing Textfield listener AWT, Swing, JavaFX & SWT 2
H Zeich in einem TextField farblich markieren?! AWT, Swing, JavaFX & SWT 5
D Swing [BoxLayout] Nur TextArea und nicht TextField vergroessen AWT, Swing, JavaFX & SWT 2
D Textfield auswerten AWT, Swing, JavaFX & SWT 4
M Swing InputVerifer auf TextField AWT, Swing, JavaFX & SWT 14
B setText() auf TextField mit Document AWT, Swing, JavaFX & SWT 2
G Problem mit Textfield AWT, Swing, JavaFX & SWT 2
G Den Inhalt von einem Textfield aktualisieren AWT, Swing, JavaFX & SWT 6
D Inhalt von Textfield nach ComboBox AWT, Swing, JavaFX & SWT 2
E Swing Button ActionListener Infos aus Textfield und ComboBox AWT, Swing, JavaFX & SWT 3
G TextField im Hintergrund AWT, Swing, JavaFX & SWT 2
Z TextField aus ActionListener von JButton verändern AWT, Swing, JavaFX & SWT 10
O ComboBox hinter TextField? AWT, Swing, JavaFX & SWT 8
T Checkbox & Textfield AWT, Swing, JavaFX & SWT 5
M Beschränkung auf Nur-Zahleneingabe in Textfield klappt nicht AWT, Swing, JavaFX & SWT 3
N Textfield feste größe? AWT, Swing, JavaFX & SWT 1
M Datum Textfield AWT, Swing, JavaFX & SWT 6
S TextField fehler AWT, Swing, JavaFX & SWT 3
D Problem mit TextField AWT, Swing, JavaFX & SWT 22
C Textfield Background auf Standard zurücksetzen AWT, Swing, JavaFX & SWT 2
V keyListener soll textfield adden AWT, Swing, JavaFX & SWT 2
R TextField bringt NullPointerException bei setVisible() AWT, Swing, JavaFX & SWT 12
J JComboBox Eintrag soll TextField aktualisieren AWT, Swing, JavaFX & SWT 3
P Komponentenentwicklung mit TextField und Label AWT, Swing, JavaFX & SWT 10
K Problem mit TextField Strings AWT, Swing, JavaFX & SWT 2
S Textfield nummer merken AWT, Swing, JavaFX & SWT 3
M problem mit textfield-aktualisierung AWT, Swing, JavaFX & SWT 4
S Fehler beim Auslesen des Textes im textfield AWT, Swing, JavaFX & SWT 8
G Zugriff auf TextField geht nicht AWT, Swing, JavaFX & SWT 5
V Werte aus TextField in eine andere Klasse? AWT, Swing, JavaFX & SWT 2
M Textfield AWT, Swing, JavaFX & SWT 8
S "größeres Problem" mit JComboBox und Textfield AWT, Swing, JavaFX & SWT 35
P [TextField] cursor setzten AWT, Swing, JavaFX & SWT 2
S Eingabe einschränken bei TextField AWT, Swing, JavaFX & SWT 19
S AWT: Probleme mit TextField AWT, Swing, JavaFX & SWT 4
S TextField: Zeilenumbrüche AWT, Swing, JavaFX & SWT 3
E Zeilenumbruch in einem AWT TextField AWT, Swing, JavaFX & SWT 2
F requestFocus() auf ein TextField AWT, Swing, JavaFX & SWT 6
E ausgelesener String wird in Textfield nicht angezeigt AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben