import javax.swing.*;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
class mywindow extends JFrame
{
mywindow()
{super("我的窗口");
setSize(300,300);
setVisible(true);
JMenuBar menubar=new JMenuBar();
JMenu menu1 =new JMenu("文件");
JMenu menu2 =new JMenu("编辑");
JMenuItem Item1=new JMenuItem("保存");
JMenuItem Item2=new JMenuItem("打开");
menubar.add(menu1);
menubar.add(menu2);
menu1.add(Item1);
menu1.add(Item2);
Container con=getContentPane();
con.add(menubar);
con.setBackground(Color.blue);
con.setVisible(true);
con.setSize(200,200);
JFrame frame=new JFrame();
Toolkit tool=frame.getToolkit();
Image myimage=tool.getImage("ha.jpg");
frame.setIconImage(myimage);
/*addwindowListener(new WindowAdapter()
{
public void WindowClosing(WindowEvent e)
{System.exit(0);}
}*/
}
}
public class a1 extends Applet
{
public void inint()
{mywindow a=new mywindow();
a.pack();
}
}
为什么执行不出来我想要的结果:
带有菜单栏的窗口
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
class mywindow extends JFrame
{
mywindow()
{super("我的窗口");
setSize(300,300);
setVisible(true);
JMenuBar menubar=new JMenuBar();
JMenu menu1 =new JMenu("文件");
JMenu menu2 =new JMenu("编辑");
JMenuItem Item1=new JMenuItem("保存");
JMenuItem Item2=new JMenuItem("打开");
menubar.add(menu1);
menubar.add(menu2);
menu1.add(Item1);
menu1.add(Item2);
Container con=getContentPane();
con.add(menubar);
con.setBackground(Color.blue);
con.setVisible(true);
con.setSize(200,200);
JFrame frame=new JFrame();
Toolkit tool=frame.getToolkit();
Image myimage=tool.getImage("ha.jpg");
frame.setIconImage(myimage);
/*addwindowListener(new WindowAdapter()
{
public void WindowClosing(WindowEvent e)
{System.exit(0);}
}*/
}
}
public class a1 extends Applet
{
public void inint()
{mywindow a=new mywindow();
a.pack();
}
}
为什么执行不出来我想要的结果:
带有菜单栏的窗口
import javax.swing.*;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
class mywindow extends JFrame
{
mywindow()
{
setTitle("我的窗口");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(300,300);
setVisible(true);
JMenuBar menubar=new JMenuBar();
JMenu menu1 =new JMenu("文件");
JMenu menu2 =new JMenu("编辑");
JMenuItem Item1=new JMenuItem("保存");
JMenuItem Item2=new JMenuItem("打开");
menubar.add(menu1);
menubar.add(menu2);
menu1.add(Item1);
menu1.add(Item2);
Container con=getContentPane();
con.add(menubar, "North");
con.setBackground(Color.blue);
con.setVisible(true);
con.setSize(200,200);
JFrame frame=new JFrame();
Toolkit tool=frame.getToolkit();
Image myimage=tool.getImage("ha.jpg");
frame.setIconImage(myimage);
}
}
public class a1
{
public static void main(String[] args)
{
mywindow a=new mywindow();
a.setVisible(true);
}
}
setVisible(true);
就放到构造方法的最后
要不setVisible(true);后添加的组件不能在第一次
显示,必须重画才能显示