Statusbar

Pichel

Mitglied
Hi,

ich habe folgende Klasse

Code:
package view;

import java.awt.Dimension;

import javax.swing.JLabel;
import javax.swing.border.*;

public class Statusbar extends JLabel {
	
	public Statusbar(){
		super();
		//super.setPreferredSize(new Dimension(300,20));
		setNachricht("statusbar");
		setBorder(new EtchedBorder());
	}

	public void setNachricht(String nachricht){
		setText(" "+ nachricht);
	}
}

Diese Klasse soll mir in einem Frame in einer anderen Datein eine Statusbar simulieren. Leider wird diese dort nicht angezeigt.

Code:
package view;


import java.awt.*;
import javax.swing.*;
import view.Statusbar;


public class Berechnung extends JPanel{
	
	static final String NEWLINE = "\n";

	public Berechnung(){
		super();
		init();
		
	}
	private void init(){
		
		
		
		setLayout(null);
		JLabel jl = new JLabel("Variable Daten zur Berechnung");
		jl.setBounds(10, 215, 250, 30);
		jl.setFont(new Font("SansSerif",Font.BOLD,17));
		add(jl);
	
		/*------------ Ende Überschrift -----------------*/	
		
		JLabel jl1 = new JLabel("Anzahl Beteiligter");
		jl1.setBounds(40,250, 150, 30);
		add(jl1);
		
		JTextField tf = new JTextField("Hier eintragen tf", 15);
		tf.setBounds(160, 255, 120, 20);
		add(tf);
	
		/*------------ Ende 1. Datenreihe Links -----------------*/		
	
		JLabel jl2 = new JLabel("Anzahl Touren");
		jl2.setBounds(40, 272, 150, 30);
		add(jl2);
		
		JTextField tf1 = new JTextField("Hier eintragen tf1", 15);
		tf1.setBounds(160, 277, 120, 20);
		add(tf1);
		
		/*------------ Ende 2.Datenreihe Links-----------------*/	
		
		JLabel jl3 = new JLabel("Anzahl Objekte");
		jl3.setBounds(40, 294, 150, 30);
		add(jl3);
		
		JTextField tf2 = new JTextField("Hier eintragen tf2", 15);
		tf2.setBounds(160, 299, 120, 20);
		add(tf2);
		
		/*------------ Ende 2.Datenreihe Links-----------------*/
		
	
		JLabel jl4 = new JLabel("Preis pro Beteiligter");
		jl4.setBounds(330, 250, 150, 30);
		add(jl4);
		
		JTextField tf3 = new JTextField("Hier eintragen tf2", 15);
		tf3.setBounds(450, 255, 120, 20);
		add(tf3);
		
		/*------------------ Ende 1. Datenreihe Rechts -------------------*/
		
		JLabel jl5 = new JLabel("Preis pro Tour");
		jl5.setBounds(330, 272, 150, 30);
		add(jl5);
		
		JTextField tf4 = new JTextField("Hier eintragen tf1", 15);
		tf4.setBounds(450, 277, 120, 20);
		add(tf4);
		
		/*------------------ Ende 2. Datenreihe Rechts -------------------*/
		
		JLabel jl6 = new JLabel("Preis pro Objekt");
		jl6.setBounds(330, 294, 150, 30);
		add(jl6);
		
		JTextField tf5= new JTextField("Hier eintragen tf1", 15);
		tf5.setBounds(450, 299, 120, 20);
		add(tf5);
		
		/*------------------ Ende 3. Datenreihe Rechts -------------------*/
		
		JButton jb = new JButton("Berechnen");
		jb.setMargin(new Insets(2,2,2,2));
		jb.setFont(new Font("Arial",Font.BOLD,12));
		jb.setBounds(490, 339, 80, 30);
		add(jb);
		
		JSeparator js = new JSeparator();
		js.setBounds(10,195,610,1);
		add(js);
		
		JSeparator jsv = new JSeparator(SwingConstants.VERTICAL);
		jsv.setBounds(300, 10, 1, 180);
		add(jsv);
		
		JLabel jl7 = new JLabel("Ergebnisse der Berechnung");
		jl7.setBounds(320, 5, 250, 30);
		jl7.setFont(new Font("SansSerif",Font.BOLD,14));
		add(jl7);
		
		Statusbar st = new Statusbar();
		st.setBounds(10, 420, 300, 10);
		add(st);
}}

Hat jemand eine Idee, wo bei mir der Fehler ist?

Danke schon mal
 
Hallo,

das Thema gilt zwar als "erledigt", aber ich würde dir trotzdem gerne vom "null Layout" abraten. Das ist wirklich einer der schlimmsten Designfehler, den man bei der UI-Entwicklung vermeiden sollte. Java bietet eine Reihe von Layout-Manager, mit denen man fast jede komplexe Oberfläche gestalten kann. Und wenn die nicht ausreichen, nimmt man ein zusätzliches Framework, wie z.B. JGoodies Forms.

Grüße
Vincent
 
Zurück