Freiraum in der GUI - Wieso?

Status
Nicht offen für weitere Antworten.
N

Nektus

Gast
Hey programmiere gerade ne kleine GUI und hab da ein Problem!

CODE :

Code:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class CClientLogin extends JFrame
{
	private static final long serialVersionUID = 1L;
	private JTextField tfBenutzername = new JTextField(15);
	private JTextField tfServeradresse = new JTextField(15);
	private JSpinner sServerport = new JSpinner();
	private JButton btnAnmelden = new JButton("Anmelden");
	private JButton btnAbbrechen = new JButton("Abbrechen");

	public CClientLogin()
	{
		super("Anmeldung");
		JPanel panel1 = new JPanel();
		JLabel lblBenutzername = new JLabel("Benutzername: ");
		JLabel lblServeradresse = new JLabel("Serveradresse: ");
		JLabel lblServerport = new JLabel("Serverport: ");
		panel1.setLayout(new GridLayout(3, 2));
		panel1.setBorder(BorderFactory.createTitledBorder("Eingabedaten"));
		panel1.add(lblBenutzername);
		panel1.add(tfBenutzername);
		panel1.add(lblServeradresse);
		panel1.add(tfServeradresse);
		panel1.add(lblServerport);
		panel1.add(sServerport);
		JPanel panel2 = new JPanel();
		panel2.setLayout(new FlowLayout());
		panel2.add(btnAnmelden);
		panel2.add(btnAbbrechen);
		Container c = getContentPane();
		c.setSize(200, 200);
		c.add(panel1);
		c.add(panel2);
		c.setLayout(new GridLayout(3, 1));

		setDefaultCloseOperation(DISPOSE_ON_CLOSE);
		btnAnmelden.addActionListener(new ButtonAnmelden());
		btnAbbrechen.addActionListener(new ActionListener()
		{
			public void actionPerformed(final ActionEvent e)
			{
				System.exit(0);
			}
		});
	}

	private class ButtonAnmelden implements ActionListener
	{
		public void actionPerformed(final ActionEvent e)
		{
		}
	}

	public static void main(String[] args)
	{
		CClientLogin s = new CClientLogin();

		s.pack();
		s.setVisible(true);
	}
}

Bild dazu :
bild1d98ed.png


wie ihr sehn könnt ist unter den Buttons jede Menge freier Raum den ich gerne weghätte. Woran liegt das?

P.S. Weiß das der Code noch ziemlich wirr ist wird aber noch geändert!

LG Chilla
 

Marco13

Top Contributor
Und wo soll der Platz hin? :wink:

In einem GridLayout sind alle Components gleich groß. Wenn du eine riesen-Component (das Eingabe-Panel) und eine kleine (das Button-Panel) packt, gibt die Größere den Platz vor. Vielleicht tut's schon
Code:
      Container c = getContentPane();
      //c.setSize(200, 200); // Bringt eh nix
      c.setLayout(new BorderLayout());  
      c.add(panel1, BorderLayout.CENTER);
      c.add(panel2, BorderLayout.SOUTH);
 

Niki

Top Contributor
Code:
Container c = getContentPane();
c.setSize(200, 200);

mach das setSize weg und schau mal ob das was geholfen hat
 

tobbbbi

Mitglied
Ich hab mal eine Frage zu deinem Code. Wieso machst du:

Code:
38       c.setLayout(new GridLayout(3, 1));

und nicht
Code:
38       c.setLayout(new GridLayout(2, 1));
?

Sind doch auch nur 2 JPanels die du einsetzt, also zwei Zeilen. Warum stellst du dann auf 3?

Wenn man auf 2 stellt, dann ist der freie Raum stark reduziert.


Und noch etwas...wie hast du den Style aus dem Screenshot hingekriegt? Wenn ich deinen Code laufen lasse, sieht es alles so "billig" aus wie immer.
 

L-ectron-X

Gesperrter Benutzer
Entweder wurde der Shot mit dem System-LookAndFeel auf einem Mac (sieht zumindest etwas ähnlich) gemacht, oder ein anderes LookAndFeel benutzt.
 

tobbbbi

Mitglied
L-ectron-X hat gesagt.:
Entweder wurde der Shot mit dem System-LookAndFeel auf einem Mac (sieht zumindest etwas ähnlich) gemacht, oder ein anderes LookAndFeel benutzt.

Ok danke, hab mir schon sowas gedacht...aber dann fehlt dieser Codeabschnitt oben.
Zu meiner Frage mit den Zeileneinstellungen beim GridLayout kannst du mir sicherlich auch was sagen oder? :)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
P GridbagLayout: Komponenten anordnen mit Freiraum AWT, Swing, JavaFX & SWT 6
M Freiraum zwischen Knoten im JTree AWT, Swing, JavaFX & SWT 14
J GridBagLayout JLabels links ausrichten + vertikaler Freiraum AWT, Swing, JavaFX & SWT 4
G Freiraum bei JMenuItem mit Icon AWT, Swing, JavaFX & SWT 4
M Wieso verändert sich die Framerate nach erneutem Starten des AnimationTimer? AWT, Swing, JavaFX & SWT 18
CptK Wieso wird nur ein Teil meiner Buttons angezeigt? AWT, Swing, JavaFX & SWT 1
J JavaFX CSS einbinden - Wieso will das einfach nicht!!! AWT, Swing, JavaFX & SWT 1
LexeB4F setValueAT geht nicht... wieso? AWT, Swing, JavaFX & SWT 14
Z JComponent's requestFocus() - Wieso nicht immer anwendbar? AWT, Swing, JavaFX & SWT 1
C Wieso nur erster Buchstabe bei Caesar-Entschlüsselung? AWT, Swing, JavaFX & SWT 2
A Swing JTable wird nicht über zurückegebene Referenz geaddet.Wieso nicht? AWT, Swing, JavaFX & SWT 5
K LayoutManager Wieso verschwinden Elemente? AWT, Swing, JavaFX & SWT 20
K Applet Wieso kann ich keine Array im Applet initialisieren AWT, Swing, JavaFX & SWT 13
propra Wieso wird paintComponent() beim Start 2 malausgeführt? AWT, Swing, JavaFX & SWT 4
P 2D-Grafik Wieso wird das Bild nicht angezeigt ? AWT, Swing, JavaFX & SWT 4
T wieso leere Oberfläche? AWT, Swing, JavaFX & SWT 5
G Swing Wieso braucht man nach setVisible mal ein revalidate und mal nicht? AWT, Swing, JavaFX & SWT 8
C Wieso funktionert der CellRenderer nicht? AWT, Swing, JavaFX & SWT 2
L Wieso werden die Icons nicht dargestellt? AWT, Swing, JavaFX & SWT 2
W Wieso SerialVersionUID bei Swing-Komponenten AWT, Swing, JavaFX & SWT 5
S Wieso Fenster im EDT sichtbar machen? AWT, Swing, JavaFX & SWT 43
M Wieso geht das nicht! AWT, Swing, JavaFX & SWT 3
S animation Flackern trotz doppelpufferung wieso? AWT, Swing, JavaFX & SWT 2
G Wieso wird meine Scrollbar nicht angezeigt? AWT, Swing, JavaFX & SWT 3
K JTable - wieso funktioniert der Autoscroll nicht? AWT, Swing, JavaFX & SWT 5
Paule JFrame bleibt leer, wieso? AWT, Swing, JavaFX & SWT 2
S Wieso werden die Bilder nicht angezeigt? AWT, Swing, JavaFX & SWT 4
G Progressbar aktualisiert sich nicht (vernünftig). WIESO? AWT, Swing, JavaFX & SWT 2

Ähnliche Java Themen

Neue Themen


Oben