javanewbie: Kämpfe mit Layouts in java

Beitrag lesen

Hallo,

Ich versuche eine Fenster für eine Überweisung zu layouten bekomme das aber nicht so hin, wie ich möchte. ich habe zwar die Elemente angeordnet (aber wie =8-/ ). So ein Überweisungsformular hat doch bestimmt mal jemand gemacht, weiß jemand wo man so etwas runterladen kann.

Vielleicht hat aber auch jemand einen Verbesserungsvorschlag wie ich meine Code verbessern kann.

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

public class Ueberweisung{

public Ueberweisung() {
    JFrame f = new JFrame ("Neue Überweisung anlegen");
    Container inhalt = f.getContentPane();
    inhalt.setLayout (new BoxLayout(inhalt,BoxLayout.Y_AXIS) );//Gridlayout:reihe, spalte,hgap,vgap
    // ----- Panels bereitstellen --------
    JPanel eingabePanels = new JPanel();
    JPanel buttonRowPanel = new JPanel();
    // ----- PanelLayouts zuweisen -------
    eingabePanels.setLayout (new BorderLayout() );
    buttonRowPanel.setLayout (new FlowLayout(FlowLayout.RIGHT) );

// ----- Panels fuellen --------------
    // ----- Eingabefelderpanel ----------
    JPanel feldPanel1 = new JPanel();
    feldPanel1.add(new JLabel ("<html><p align="right"><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Von Konto</b></p></html>"));
    feldPanel1.add(new JTextField( 30 ));

JPanel feldPanel2 = new JPanel();
    feldPanel2.add(new JLabel ("<html><p align="right"><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Inhaber</b></p></html>"));
    feldPanel2.add(new JTextField( 30 ));

JPanel feldPanel3 = new JPanel();
    feldPanel3.add(new JLabel ("<html><p align="right"><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Empf&auml;nger</b></p></html>"));
    feldPanel3.add(new JTextField( 30 ));

JPanel feldPanel4 = new JPanel();
    feldPanel4.add(new JLabel ("<html><p align="right"><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Kontonummer</b></p></html>"));
    feldPanel4.add(new JTextField( 30 ));

JPanel betragPanel = new JPanel();
    betragPanel.add( new JTextField( 16 ) );
    betragPanel.add( new JLabel ("<html><p align="center"><b>,</b></p></html>") );
    betragPanel.add( new JTextField( 4 ) );
    betragPanel.add( new JLabel ("<html><p align="center"><b>€</b></p></html>") );
    JPanel feldPanel5 = new JPanel();
    feldPanel5.add(new JLabel ("<html><p align="right"><b>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Betrag</b></p></html>"));
    feldPanel5.add(betragPanel);

JPanel feldPanel6 = new JPanel();
    feldPanel6.add(new JLabel ("<html><p align="right"><b>&nbsp;&nbsp;&nbsp;Verwendungszweck</b></p></html>"));
    feldPanel6.add(new JTextField( 30 ));
    // -------- Buttonpanel --------------
    JButton butCancel = new JButton ( "Cancel");
    // but.addActionListener ( ... );
    butCancel.setToolTipText("Hiermit bestätigen Sie Ihre Auswahl.");
    buttonRowPanel.add(butCancel);
    JButton butOkay = new JButton ( "Okay");
    // but.addActionListener ( ... );
    butOkay.setToolTipText("Hiermit bestätigen Sie Ihre Auswahl.");
    buttonRowPanel.add(butOkay);

// ---- Panels zum inhalt hinzufügen.
    inhalt.add(feldPanel1);
    inhalt.add(feldPanel2);
    inhalt.add(feldPanel3);
    inhalt.add(feldPanel4);
    inhalt.add(feldPanel5);
    inhalt.add(feldPanel6);
    inhalt.add(buttonRowPanel);

f.setDefaultCloseOperation (JFrame.DISPOSE_ON_CLOSE);

f.setSize(600,320);//breite, hoehe
    f.toFront();
    f.setVisible(true);
  }
}