当我键入t.schedule(umm.setVisible(false), 5);
时,我得到的错误和void类型是不允许的。有人可以帮我解决这个问题吗?非静态方法不能被引用,void类型不允许
public class menu extends JFrame{
JLabel bgmenu=new JLabel();
JLabel java=new JLabel();
JLabel umm=new JLabel();
JLayeredPane jLayeredPane1=new JLayeredPane();
public menu(){
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
//label
umm.setIcon(new javax.swing.ImageIcon("D:\\Job\\Kuliah\\4\\DAMG\\Game\\pic\\umm.jpg"));
umm.setBounds(0, 0, 1024, 709);
java.setIcon(new javax.swing.ImageIcon("D:\\Job\\Kuliah\\4\\DAMG\\Game\\pic\\java.jpg"));
java.setBounds(0, 0, 1024, 709);
bgmenu.setIcon(new javax.swing.ImageIcon("D:\\Job\\Kuliah\\4\\DAMG\\Game\\pic\\interfacemainmenu.jpg"));
bgmenu.setBounds(0, 0, 1024, 709);
//posisi
jLayeredPane1.add(umm, javax.swing.JLayeredPane.DEFAULT_LAYER);
jLayeredPane1.add(java, javax.swing.JLayeredPane.DEFAULT_LAYER);
jLayeredPane1.add(bgmenu, javax.swing.JLayeredPane.DEFAULT_LAYER);
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLayeredPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 1024, javax.swing.GroupLayout.PREFERRED_SIZE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jLayeredPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 709, javax.swing.GroupLayout.PREFERRED_SIZE)
);
pack();
}
public static void main(String[] args) {
new menu().setVisible(true);
Timer t=new Timer();
//get error here under this comment
t.schedule(umm.setVisible(false), 5);
}
重新检查'schedule'方法的签名并查看'setVisible'返回类型。 – mishadoff 2012-03-23 00:23:24
另请考虑['javax.swing.Timer' v。'java.util.Timer'](http://java.sun.com/products/jfc/tsc/articles/timer/)。 – trashgod 2012-03-23 00:33:43
@ carl-manaster thx,现在明确:) – 2012-03-23 01:34:16