GUI wird nicht komplett geladen

Pichel

Mitglied
Hallo,

ich schreibe an einem Programm für eine Kostenberechnung. Ich benötige dafür einige JTabbeds. Da ich alles im MVC Konzept anlegen möchte, habe ich momentan eine Datei, wo sich die Grafiken befinden und den COntroller.

Mein Problem ist nun, wenn ich denn Controller ausführe, wird auch das JFrame, die passende Größe und die Location richtig ausgeführt. Nur werden weder Layouts noch die JTabbed´s ausgeführt. Kann jemand bei mir im Quellcode den Fehler erkennen.

Danke schon mal!

der Code für die Oberfläche
Code:
package view;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.JTabbedPane;

import java.awt.Component;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.Dimension;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Toolkit;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class Oberflaeche extends JFrame{
	
	public Oberflaeche (){
		super("DELProzessKostenRechner");
		this.setSize(640, 480);		
		this.setResizable(false);
		this.setDefaultCloseOperation(Oberflaeche.EXIT_ON_CLOSE);
		addWindowListener( new WindowAdapter() {
	      public void windowClosing ( WindowEvent e) {
	        System.exit(0); }
	});
	
		Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
		this.setLocation((d.width - getSize().width ) / 2,(d.height - getSize().height) / 2);
		
		JTabbedPane tp = new JTabbedPane();
		for(int i = 0; i < 4; i++){
			JPanel panel = new JPanel();
			panel.add(new JLabel("Karte" + i));
			tp.addTab("Tab" + i, panel);
		}
		
		
	
		

		
	}
}

Der Code des Controllers

Code:
package controller;

import view.Oberflaeche;

public class Controller {
	
	public static void main (String args[]){
		 new Oberflaeche().setVisible(true);
		
		
		
	}

}
 
Kaum ins Forum gestellt und schon denn Fehler gefunden

Ich habe vergessen, meine Grafiken auf der Öberfläche zu registrieren.
Zum Beispiel mit

getContentPane().add(tp, BorderLayout.CENTER);


vg
 
Hallo,

das ganze wird schon ausgeführt, aber du fügst die TabbedPane nicht dem Fenster hinzu.

Du brauchst den WindowListener nicht. Wenn du ein JFrame mittig positionieren möchtest, geht das leicht mit
Code:
setLocationRelativTo(null);
. Das funktioniert auch erst seit Java 1.5

MFG

Sascha
 
Zurück