Bekomme das Label nicht in die Mitte von Reihe

Armadillo

Mitglied
Hallo!

Ich habe zurzeit ein Problem, ich versuche ein normales Fenster zu machen, das Problem ist, ich bekomm den einen JLabel nicht in die Mitte von der Reihe.

Der ganze Quelltext:

Java:
import javax.swing.*;
import java.awt.*;

class Fenster extends JFrame {

	//EingabeFelder
	JLabel l_name;
	JLabel l_mail;
	JTextField tf_name;
	JTextField tf_mail;
	
	//ZuweisungsFelder
	JLabel kreise;
	JButton firma;
	JButton freunde;
	JButton sonstige;
	JLabel space;
	JLabel space1;
	//Konstruktor
	Fenster() {
		
		//Basic Stuff
		setSize(375, 200);
		setLocation(450, 200);
		setTitle("Für Dominique (c) Julien");
		setLayout(new GridLayout(4,5));
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		
		//Die Sachen initialisieren
		l_name = new JLabel("              Name Eingaben:");
		l_mail = new JLabel("              E-Mail Eingeben:");
		
		space = new JLabel("");
		space1 = new JLabel("");
		
		tf_name = new JTextField(12);
		tf_mail = new JTextField(12);
		
		kreise = new JLabel("\t\tZum Kreis hinzufügen:");
		
		
		
		//Die Sachen adden
		add(l_name);
		add(l_mail);
		add(tf_name);
		add(tf_mail);
		add(kreise);
		
		//Einschalten
		setVisible(true);
		
	}
	
}
[/Java]

Der Problembereich:

[code=Java]
kreise = new JLabel("\t\tZum Kreis hinzufügen:");

Einerseits funktionieren das \t nicht, macht keinen Abstand, andererseits weiß ich nicht wie ich eine Schaltfläche in die Mitte einer Reihe bekommen.


Grüße Armadillo
 
Java:
class Fenster extends JFrame {

	// EingabeFelder
	JLabel l_name;
	JLabel l_mail;
	JTextField tf_name;
	JTextField tf_mail;

	// ZuweisungsFelder
	JLabel kreise;
	JButton firma;
	JButton freunde;
	JButton sonstige;
	JLabel space;
	JLabel space1;

	// Konstruktor
	public Fenster() {

		// Basic Stuff
		setSize(375, 200);
		setLocation(450, 200);
		setTitle("Für Dominique (c) Julien");
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

		// Die Sachen initialisieren
		l_name = new JLabel("Name Eingaben:");
		l_mail = new JLabel("E-Mail Eingeben:");

		space = new JLabel("");
		space1 = new JLabel("");

		tf_name = new JTextField(12);
		tf_mail = new JTextField(12);

		kreise = new JLabel("\t\tZum Kreis hinzufügen:");
		
		setLayout(new GridBagLayout());
		GridBagConstraints constraints = new GridBagConstraints();
		
		constraints.fill = GridBagConstraints.CENTER;
		constraints.gridx = 0;
		constraints.gridy = 0;
		add(l_name, constraints);

		constraints.gridx = 1;
		constraints.gridy = 0;
		add(l_mail, constraints);
		
		constraints.gridx = 0;
		constraints.gridy = 1;
		add(tf_name, constraints);
		
		constraints.gridx = 1;
		constraints.gridy = 1;
		add(tf_mail, constraints);
		
		constraints.gridx = 0;
		constraints.gridy = 2;
		constraints.gridwidth = 2;
		add(kreise, constraints);
		
		setVisible(true);
	}
}

Ist mit Hilfe des GridBagLayout erstellt.
 
Java:
class Fenster extends JFrame {

		setLayout(new GridBagLayout());
		GridBagConstraints constraints = new GridBagConstraints();
		
		constraints.fill = GridBagConstraints.CENTER;
		constraints.gridx = 0;
		constraints.gridy = 0;
		add(l_name, constraints);

		constraints.gridx = 1;
		constraints.gridy = 0;
		add(l_mail, constraints);
		
		constraints.gridx = 0;
		constraints.gridy = 1;
		add(tf_name, constraints);
		
		constraints.gridx = 1;
		constraints.gridy = 1;
		add(tf_mail, constraints);
		
		constraints.gridx = 0;
		constraints.gridy = 2;
		constraints.gridwidth = 2;
		add(kreise, constraints);
		
		setVisible(true);
	}
}

Ist mit Hilfe des GridBagLayout erstellt.

Vielen vielen Dank!
Bin jedoch noch ein Anfänger, gäbe es zum GridBagLayout Tutorials welches ein bisschen anfängerfreundlich ist?
 
Ich habe es grad selber das erste mal genutzt und finde keine bessere Anleitung... Was genau ist denn dein Problem hierbei?

Ein Typ für deinen späteren Stil. Solange man eine Instanz eines Objektes lediglich innerhalb einer Methode bzw. eines Scopes nutzt, brauch diese keine Objektvariabel sein. Du hast nämlich alle deine Variablen global angelegt.
 

Zurück
Oben