A
andreas71
Gast
Hallo
ich habe ein Programm geschrieben bei dem das Fenster bzw. Frame nicht immer startet.
Mit der Klasse "MainFrame" erstelle ich einen Frame und hole mir dann das Startpanel. Auch wenn das Fenster nicht aufgeht, habe ich immer die Protokollausgabe "return panel".
Hat jemand eine Idee?
Danke und Gruß
Andreas
ich habe ein Programm geschrieben bei dem das Fenster bzw. Frame nicht immer startet.
Mit der Klasse "MainFrame" erstelle ich einen Frame und hole mir dann das Startpanel. Auch wenn das Fenster nicht aufgeht, habe ich immer die Protokollausgabe "return panel".
Hat jemand eine Idee?
Code:
package dvorak.ranking.windows;
import java.awt.*;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import javax.swing.JFrame;
import org.apache.log4j.Logger;
import dvorak.ranking.Exit;
import dvorak.ranking.model.StartPanel;
/**
* Main window
* @author Andreas Dvorak
*/
public class MainFrame {
static Logger logger = Logger.getLogger(MainFrame.class);
public boolean status = true;
private JFrame frame = null;
public void initFrame(){
logger.info("create frame");
frame = new JFrame();
//frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
logger.info("call method to exit program");
Exit programend = new Exit();
programend.endall(frame);
}
});
frame.setSize(600,620);
frame.setTitle("Bestenliste");
// In der Mitte des Bildschirms platzieren
frame.setLocation(
(Toolkit.getDefaultToolkit().getScreenSize().width-
frame.getSize().width) / 2,
(Toolkit.getDefaultToolkit().getScreenSize().height-
frame.getSize().height) / 2);
logger.info("call menu");
MainMenu menu = new MainMenu();
frame.setJMenuBar(menu.createMenu(frame));
logger.info("create panel");
StartPanel panel = new StartPanel();
frame.setContentPane(panel.getPanel());
frame.setVisible(true);
}
Code:
package dvorak.ranking.model;
import java.awt.FlowLayout;
import java.awt.GridLayout;
import javax.swing.JPanel;
import javax.swing.JTextPane;
import org.apache.log4j.Logger;
import dvorak.ranking.Const;
/**
* Start panel
* @author Andreas Dvorak
*/
public class StartPanel implements Const{
static Logger logger = Logger.getLogger(StartPanel.class);
public JPanel getPanel(){
logger.info("create start panel");
JPanel panel = new JPanel();
JPanel uppanel = new JPanel();
uppanel.setBackground(new java.awt.Color(238,238,238));
JPanel midpanel = new JPanel();
midpanel.setBackground(new java.awt.Color(238,238,238));
JPanel downpanel = new JPanel();
downpanel.setBackground(new java.awt.Color(238,238,238));
JPanel statuspanel = new JPanel();
statuspanel.setBackground(new java.awt.Color(238,238,238));
JTextPane text1 = new JTextPane();
text1.setBackground(new java.awt.Color(238,238,238));
JTextPane text2 = new JTextPane();
text2.setBackground(new java.awt.Color(238,238,238));
JTextPane text3 = new JTextPane();
text3.setBackground(new java.awt.Color(238,238,238));
JTextPane statustext = new JTextPane();
statustext.setBackground(new java.awt.Color(238,238,238));
GridLayout gridLayout = new GridLayout();
gridLayout.setRows(4);
gridLayout.setColumns(1);
panel.setLayout(gridLayout);
FlowLayout flowLayout = new FlowLayout();
flowLayout.setHgap(20);
flowLayout.setVgap(40);
uppanel.setLayout(flowLayout);
panel.add(uppanel);
panel.add(midpanel);
panel.add(downpanel);
panel.add(statuspanel);
text1.setText("Bestenliste für die Verwaltung von Laufergebnissen");
text1.setFont(new java.awt.Font("Arial", java.awt.Font.BOLD, 18));
text1.setEditable(false);
text2.setText("Andreas Dvorak");
text2.setFont(new java.awt.Font("Arial", java.awt.Font.BOLD, 18));
text2.setEditable(false);
text3.setText("Version "+ version);
text3.setFont(new java.awt.Font("Arial", java.awt.Font.BOLD, 18));
text3.setEditable(false);
Registration regstatus = new Registration();
boolean status = regstatus.getRegStatus();
if (status){
statustext.setText("Status: registriert");
}
else {
statustext.setText("Status: nicht registriert");
}
statustext.setFont(new java.awt.Font("Arial", java.awt.Font.BOLD, 14));
statustext.setEditable(false);
uppanel.add(text1);
midpanel.add(text2);
downpanel.add(text3);
statuspanel.add(statustext);
logger.info("return panel");
return panel;
}
}
Danke und Gruß
Andreas