Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge

Layout-Frage in Java

DumDum / 5 Antworten / Flachansicht Nickles

Will ein kleines Frame mit 3 Komponenten erstellen. Hab bis jetzt noch den BorderLayout.


Kann man hier irgendwie die Größe der Komponenten einstellen ?


Hab nämlich ein TextArea("Central"), ein TextField("North") und ein Button("East"), aber der Button wird einfach zu groß dargestellt.


Oder soll ich vielleicht mit nem anderen Layout arbeiten. Bin für jede Antwort dankbar.

bei Antwort benachrichtigen
DumDum Nachtrag zu: „Layout-Frage in Java“
Optionen

danke für deine Antwort.
Ich konnt das mit den Layout leider noch nicht testen, weil ich mein Programm eigentlich hauptsächlich aus schon fertigen Componenten von JavaEditor zusammengebastelt hab. Jetzt wollt ich den Quellcode mal ein bisschen vereinfachen und übersichtlicher machen aber jetzt bekomm ich einen Fehler bei dem ich nicht weiter weiß.
Mein Problem liegt in der Methode actionPerformed. Ich will das wenn man auf Beenden klick das Programm geschloßen wird. Aber der bringt immer einen Fehler. Hab schon verschiedene Sachen wie getText usw. versucht



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

public class Test implements ActionListener {

JFrame frame = new JFrame("Test");
JMenuBar MenuBar = new JMenuBar();
JMenu Menu = new JMenu("Datei");
JMenuItem MenuItem1 = new JMenuItem ("Neu");
JMenuItem MenuItem2 = new JMenuItem ("Öffnen");
JMenuItem MenuItem3 = new JMenuItem ("Speichern");
JMenuItem MenuItem4 = new JMenuItem ("Beenden");
JTextArea Text = new JTextArea ("", 1, 1);
JPanel panel = new JPanel();

public void fenster () {

frame.add (MenuBar);
MenuBar.add (Menu);
Menu.add (MenuItem1);
MenuItem1.addActionListener(this);
Menu.add (MenuItem2);
MenuItem2.addActionListener(this);
Menu.add (MenuItem3);
MenuItem3.addActionListener(this);
Menu.add (MenuItem4);
MenuItem4.addActionListener(this);

Text.setText("Test");
Text.setEditable(false);
frame.add("Center",Text);

panel.setLayout(new GridLayout(1,1));
frame.getContentPane().add(panel);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(800,600);
frame.setVisible(true);
}

public void actionPerformed (ActionEvent e) {
if (JMenuItem.getComponent().equals(MenuItem4))
System.exit(0);
else Text.setText("Neu");


}

public static void main(String args[]){

JFilmeVerwalter test = new JFilmeVerwalter();
test.fenster();
}
}

bei Antwort benachrichtigen