Hallo,
ich habe hier einen JFrame dem ich das BorderLayout zugewiesen habe.
Dort will ich nun 2 Panels zuweisen das Erste CENTER und das Zweite EAST.
CENTER wird korrekt angezeigt EAST aber nicht, dort stimmt die Schrift nicht und es hat überhaupt keine Wirkung wenn ich die Positionen der Elemente ändere.
ich habe hier einen JFrame dem ich das BorderLayout zugewiesen habe.
Dort will ich nun 2 Panels zuweisen das Erste CENTER und das Zweite EAST.
CENTER wird korrekt angezeigt EAST aber nicht, dort stimmt die Schrift nicht und es hat überhaupt keine Wirkung wenn ich die Positionen der Elemente ändere.
Java:
package Hauptprogramm;
import java.awt.BorderLayout;
import java.awt.Label;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.UIManager;
import javax.swing.WindowConstants;
public class Verbrauchsrechner extends JFrame {
//Attribute
private static JTextField eingabeKubik;
private static double zustandszahl = 0.94876, brennwert = 11.296, abzuege = 2236;
private static double doubEingabe, rchztr, kwh, aktKstn;
private static JTextField tFanzRchztr;
private static JTextField tFanzKwh;
//Verrechnung
public static void verrechnen() {
rchztr = doubEingabe - abzuege;
kwh = Math.round(rchztr * zustandszahl * brennwert);
//kWh * Preis/kWh auf Euro + Grundgebuer - Vorjahresrechnung
aktKstn = kwh * 6.39 / 100 + 123.76;
aktKstn = Math.round(385.83 - aktKstn);
}
//Konstruktor für Fensteraufbau
public Verbrauchsrechner() {
setBounds(100, 100, 1000, 300);
setLayout(new BorderLayout());
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}
public static void main(String[] args) {
//Fenster erstellen
Verbrauchsrechner hFenster = new Verbrauchsrechner();
//Erstellung Gasrechner
JPanel gasPanel = new JPanel();
gasPanel.setLayout(null);
gasPanel.setBounds(100, 100, 500, 300);
hFenster.add(gasPanel, BorderLayout.CENTER);
//Label Beschriftungen
JLabel lblBakt = new JLabel("Aktueller Stand:");
lblBakt.setBounds(70, 200, 115, 20);
gasPanel.add(lblBakt);
JLabel lblBkubik = new JLabel("m³");
lblBkubik.setBounds(311, 198, 70, 20);
gasPanel.add(lblBkubik);
JLabel lblBstndKwh = new JLabel("Stand in kWh:");
lblBstndKwh.setBounds(86, 140, 99, 20);
gasPanel.add(lblBstndKwh);
JLabel lblBeinKwh = new JLabel("kWh");
lblBeinKwh.setBounds(311, 140, 31, 20);
gasPanel.add(lblBeinKwh);
JLabel lblBrchztr = new JLabel("Rechnungszeitraum:");
lblBrchztr.setBounds(39, 170, 146, 20);
gasPanel.add(lblBrchztr);
JLabel lblKubRchztr = new JLabel("m³");
lblKubRchztr.setBounds(311, 169, 70, 20);
gasPanel.add(lblKubRchztr);
JLabel lblBdiffVj = new JLabel("Differenz Vj:");
lblBdiffVj.setBounds(311, 0, 90, 20);
gasPanel.add(lblBdiffVj);
//Label Ausgaben
JLabel lblDiffVj = new JLabel("");
lblDiffVj.setBounds(397, 0, 70, 20);
gasPanel.add(lblDiffVj);
tFanzKwh = new JTextField();
tFanzKwh.setBackground(UIManager.getColor("Button.background"));
tFanzKwh.setBounds(190, 140, 120, 20);
gasPanel.add(tFanzKwh);
tFanzRchztr = new JTextField();
tFanzRchztr.setBackground(UIManager.getColor("Button.background"));
tFanzRchztr.setBounds(190, 170, 120, 20);
gasPanel.add(tFanzRchztr);
//Action Eingabe und Button
eingabeKubik = new JTextField();
eingabeKubik.setBackground(UIManager.getColor("Button.background"));
eingabeKubik.setBounds(190, 200, 120, 20);
gasPanel.add(eingabeKubik);
JButton btnOk = new JButton("OK");
btnOk.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
doubEingabe = Double.parseDouble(eingabeKubik.getText());
verrechnen();
tFanzKwh.setText(kwh + "");
tFanzRchztr.setText(rchztr + "");
lblDiffVj.setText(aktKstn + "");
}
});
btnOk.setBounds(220, 230, 60, 25);
gasPanel.add(btnOk);
//Erstellung Stromrechner
JPanel stromPanel = new JPanel();
gasPanel.setLayout(null);
gasPanel.setBounds(100, 100, 500, 300);
hFenster.add(stromPanel, BorderLayout.EAST);
//Label Beschriftungen
Label lblVersorger = new Label("Versorger: innogy Direkt");
lblVersorger.setBounds(250, 300, 50, 50);
stromPanel.add(lblVersorger);
Label lblPreis = new Label("Grundgebühr: 97,35 € Preis pro kWh: 28,01 ct");
lblVersorger.setBounds(250, 250, 50, 50);
stromPanel.add(lblPreis);
//Fenster Optionen Fenster anzeigen
// hFenster.pack();
hFenster.setVisible(true);
}
}