编译错误列表然后在Eclipse中快速消失
问题描述:
所以我创建了一个swing GUI。在运行代码之后,我期望看到的窗口会出现,并且除了在弹出窗口之前突然出现在控制台上的一堆错误,然后这些错误就像它们出现时那样突然消失时,所有内容都可以完美运行。我无法确定这些“错误”是什么,因为它们似乎不到一秒钟左右。我也不知道我是否应该担心,因为我的代码正常工作。编译错误列表然后在Eclipse中快速消失
我会在这里添加代码以防万一任何人需要它进行诊断。
我的JPanel类:(注:ActionListener的和的ItemListener方法将会在下面填写)
public class BoardPanel extends JPanel implements ActionListener, ItemListener{
private JMenu m2difficultyMenu, m1boardSizeMenu;
private JMenuBar menuBar;
private JRadioButtonMenuItem m1r1, m1r2, m2r1, m2r2, m2r3;
private JCheckBox cb1;
private JButton startButton;
private ButtonGroup m1Group, m2Group;
private JLabel label;
private JPanel p1, p2, p3;
public BoardPanel(){
setLayout(new BorderLayout());
p1=new JPanel();
//p1.setLayout(new BoxLayout(p1, BoxLayout.Y_AXIS));
p2=new JPanel();
//p2.setLayout(new BoxLayout(p2, BoxLayout.Y_AXIS));
p3=new JPanel();
p3.setBorder(BorderFactory.createEmptyBorder(100, 0, 0, 0));
p1.setBorder(BorderFactory.createEmptyBorder(0, 0, 0, 100));
p2.setBorder(BorderFactory.createEmptyBorder(0, 100, 0, 0));
//creating menus
m2difficultyMenu=new JMenu("Stufe");
m1boardSizeMenu=new JMenu("Groesse");
//creating menu bar
menuBar=new JMenuBar();
//creating buttons, radio buttons, and check boxes
label=new JLabel("Choose your settings then hit play. Good luck!");
m1r1=new JRadioButtonMenuItem("3x3");
m1r2=new JRadioButtonMenuItem("4x4");
m2r1=new JRadioButtonMenuItem("leicht");
m2r2=new JRadioButtonMenuItem("mittel");
m2r3=new JRadioButtonMenuItem("Unschlagbar");
cb1=new JCheckBox("Hinweise");
startButton=new JButton("Spielen!");
startButton.setBackground(Color.RED);
startButton.setForeground(Color.white);
//setting borders
label.setBorder(BorderFactory.createEmptyBorder(200,125,100,0));
//p1.add(Box.createHorizontalStrut(100));
//p2.add(Box.createHorizontalStrut(100));
//creating button groups
m1Group=new ButtonGroup();
m2Group=new ButtonGroup();
//Assigning buttons to groups
m1Group.add(m1r1);
m1Group.add(m1r2);
m2Group.add(m2r1);
m2Group.add(m2r2);
m2Group.add(m2r3);
//Adding menus to the menu bar
menuBar.add(m2difficultyMenu);
menuBar.add(m1boardSizeMenu);
menuBar.add(cb1);
//menuBar.add(Box.createHorizontalGlue());
//Adding buttons to difficulty menu
m2difficultyMenu.add(m2r1);
m2difficultyMenu.add(m2r2);
m2difficultyMenu.add(m2r3);
//Adding buttons to size menu
m1boardSizeMenu.add(m1r1);
m1boardSizeMenu.add(m1r2);
//Adding components to panels
add(p1, BorderLayout.LINE_START);
add(p2, BorderLayout.LINE_END);
add(p3, BorderLayout.PAGE_END);
add(label, BorderLayout.PAGE_START);
add(startButton, BorderLayout.CENTER);
startButton.setFont(new Font("Arial", 1, 40));
setPreferredSize(new Dimension(500,500));
}
/**
*
* @return Returns the menu bar for use in the JFrame class
*/
public JMenuBar getBar(){
return menuBar;
}
@Override
public void itemStateChanged(ItemEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
}
}
JFrame类:
public class BoardFrame extends JFrame {
private BoardPanel panel;
public BoardFrame() {
panel=new BoardPanel();
setJMenuBar(panel.getBar());
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setContentPane(panel);
setTitle("TicTacToe");
setResizable(false);
pack();
setVisible(true);
}
public static void main(String[] args) {
// TODO Auto-generated method stub
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
try {
for (LookAndFeelInfo info : UIManager.getInstalledLookAndFeels()) {
if ("Nimbus".equals(info.getName())) {
UIManager.setLookAndFeel(info.getClassName());
break;
}
}
new BoardFrame();
} catch (Exception e) {
// If Nimbus is not available, you can set the GUI to another look and feel.
}
}
});
}
}
这是我所看到的,这如预期:
答
从命令行运行代码并在那里看到没有错误消息后,我重新启动Eclipse,并做了诀窍。所以Eclipse只需要重新启动。
您是否尝试从命令行运行程序?然后,您将看到正在打印到控制台的内容。 – Codebender
刚刚做到了。没有消息被打印,代码只是运行。 –