不使用MW.show();的话就只生成一个主窗口,但理论上说那个空白窗口还是存在的,只是看不到而已,使用show();绘制出了所有的组件,到底是哪条语句生成的空白窗口
解决方案 »
- juno能用derby插件吗
- 如何把把30~240 之间的数,转化为ascii码
- 好心的前辈请帮帮忙,我有个问题不理解
- jAVA读文件的时候如何去空格啊!!
- [请教]关于ArrayList
- 问:抽象方法、静态方法、普通方法的区别?
- 关于数据库结构操作的问题?谢谢!
- 在java.util.*下面有一个这个类:ResourceBundle,请问这个类是什么意思?怎么用?有什么好处?
- 亚历士多德曾经说:“给我一个支点,我将撬动地球!”,为什么我仅仅只是点击了一下run的按钮,整个地球就不见了?
- 谁知道在java中用DAO怎么连接数据库?
- 初学java,关于J2SE 1.4.2 SDK设置问题
- 明天要去易达文科技面试,有谁知道该公司的情况请提供信息,来者有分!
f.setMenuBar(MB);
f.resize(600,400);
f.setVisible(true);
这部分把前面的f去掉就行了。
你试试,应该ok了
你放上了许多组建。
而当你在main中new出MainWindows时,同时构造了两个窗口,一个显然
是f,而另外一个则是真正的MainWindows对象(就是那个很小的窗口,因为
你没有设置它的大小,所以默认是最小的)。同时你的程序不能关闭,对吧?以下是我改好的代码,我觉得一般你不要在
那个MainWindows的构造函数中再构造一个Frame对象,这样你的父类就有点
失去意义了。然后setVisible最好也不要放在构造函数中,而是构造出对象
后再显示。以下代码也加入了关闭程序的监听器。import java.awt.*;
import java.awt.event.*;
//import javax.swing.*;
//import javax.swing.event.*;class MainWindows extends Frame{ MenuBar MB;//=new MenuBar();//主菜单 Menu m1,//=new Menu("收文管理"),
m2,//=new Menu("发文管理"),
m3,//=new Menu("文件查询"),
m4,//=new Menu("公文销毁"),
m5,//=new Menu("系统维护"),
HelpMenu;//=new Menu("帮助"); public MainWindows(){// 构造函数 setTitle("锦江工业开发区文件管理系统");
MB=new MenuBar();//主菜单
m1=new Menu("收文管理");
m2=new Menu("发文管理");
m3=new Menu("文件查询");
m4=new Menu("公文销毁");
m5=new Menu("系统维护");
HelpMenu=new Menu("帮助");//-------------收文管理--------------------------------------- String[] CF_MenuItem={"来文登记","领导阅批及下发","督办处理","公文归档"};
for(int i=0;i<CF_MenuItem.length;i++){
m1.add(new MenuItem(CF_MenuItem[i]));
if((i+1)%2==0)
m1.addSeparator();
}
//--------------发文管理---------------------------------------
String[] GF_MenuItem={"文件拟稿","审稿与审核","文件发行","文件归档"};
for(int i=0;i<GF_MenuItem.length;i++){
m2.add(new MenuItem(GF_MenuItem[i]));
if((i+1)%2==0)
m2.addSeparator();
}
//--------------------文件查询---------------------------------
String[] FM_MenuItem={"来文信息查询","发文信息查询"};
for(int i=0;i<FM_MenuItem.length;i++){
m3.add(new MenuItem(FM_MenuItem[i]));
}
//--------------------公文销毁----------------------------------
String[] FD_MenuItem={"文件销毁","销毁记录查询"};
for(int i=0;i<FD_MenuItem.length;i++){
m4.add(new MenuItem(FD_MenuItem[i]));
}
//---------------------系统维护-----------------------------------
String[] SM_MenuItem={"单位名称设置","打印机设置","操作人员设置","类别维护设置","数据处理"};
for(int i=0;i<SM_MenuItem.length;i++){
m5.add(new MenuItem(SM_MenuItem[i]));
if((i+1)%2==0)
m5.addSeparator();
}
//----------------帮助---------------------------------------
String[] HP_MenuItem={"系统帮助","软件注册","关于软件","退出系统"};
for(int i=0;i<HP_MenuItem.length;i++){
HelpMenu.add(new MenuItem(HP_MenuItem[i]));
if((i+1)%2==0)
HelpMenu.addSeparator();
}
//-----------------------------------------------------------
MB.add(m1);
MB.add(m2);
MB.add(m3);
MB.add(m4);
MB.add(m5);
MB.add(HelpMenu);
MB.setHelpMenu(HelpMenu);
//MainFrame.addWindowListener(new KillWindows());
addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent ee)
{
System.exit(0);
}
});
setMenuBar(MB);
setSize(600,400);
setLocation(150,100);
//setVisible(true); }
//------------------------------------------------------------
public static void main(String args[])
{
MainWindows MW=new MainWindows();
MW.setVisible(true);
}
}
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;class MainWindows extends JFrame{
MenuBar MB=new MenuBar();//主菜单Menu m1,
m2,
m3,
m4,
m5,
HelpMenu;public MainWindows(){
super("锦江工业开发区文件管理系统"); m1=new Menu("收文管理");
m2=new Menu("发文管理");
m3=new Menu("文件查询");
m4=new Menu("公文销毁");
m5=new Menu("系统维护");
HelpMenu=new Menu("帮助");
//-------------收文管理---------------------------------------MenuItem[] CF_MenuItem={new MenuItem("来文登记"),
new MenuItem("领导阅批及下发"),
new MenuItem("督办处理"),
new MenuItem("公文归档")};
for(int i=0;i<CF_MenuItem.length;i++){
m1.add(CF_MenuItem[i]);
if((i+1)%2==0)
m1.addSeparator();
}
CF_MenuItem[0].addActionListener(new CMIL());//--------------发文管理---------------------------------------MenuItem[] GF_MenuItem={new MenuItem("文件拟稿"),
new MenuItem("审稿与审核"),
new MenuItem("文件发行"),
new MenuItem("文件归档")};
for(int i=0;i<GF_MenuItem.length;i++){
m2.add(GF_MenuItem[i]);if((i+1)%2==0)
m2.addSeparator();}
//--------------------文件查询---------------------------------MenuItem[] FM_MenuItem={new MenuItem("来文信息查询"),
new MenuItem("发文信息查询")};
for(int i=0;i<FM_MenuItem.length;i++){
m3.add(FM_MenuItem[i]);
}
//--------------------公文销毁----------------------------------MenuItem[] FD_MenuItem={new MenuItem("文件销毁"),
new MenuItem("销毁记录查询")};
for(int i=0;i<FD_MenuItem.length;i++){
m4.add(FD_MenuItem[i]);
}
//---------------------系统维护-----------------------------------MenuItem[] SM_MenuItem={new MenuItem("单位名称设置"),
new MenuItem("打印机设置"),
new MenuItem("操作人员设置"),
new MenuItem("类别维护设置"),
new MenuItem("数据处理")};
for(int i=0;i<SM_MenuItem.length;++i){
m5.add(SM_MenuItem[i]);
if((i+1)%2==0)
m5.addSeparator();
}
//----------------帮助---------------------------------------MenuItem[] HP_MenuItem={new MenuItem("系统帮助"),
new MenuItem("软件注册"),
new MenuItem("关于软件"),
new MenuItem("退出系统")};
for(int i=0;i<HP_MenuItem.length;i++){
HelpMenu.add(HP_MenuItem[i]);
if((i+1)%2==0)
HelpMenu.addSeparator();
}//-----------------------------------------------------------MB.add(m1);
MB.add(m2);
MB.add(m3);
MB.add(m4);
MB.add(m5);
MB.add(HelpMenu);
MB.setHelpMenu(HelpMenu);setMenuBar(MB);
resize(600,400);
setLocation(150,100);
setVisible(true);}
//------------------------------------------------------------
public static void main(String args[])
{ MainWindows MW=new MainWindows();
MW.addWindowListener(
new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
MW.resize(800,600);
MW.show(); }
}//|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
//=================ComeFile组件事件处理类===============================================
//------------------------------------------------------------
class CMIL implements ActionListener{
public void actionPerformed(ActionEvent e){
JFrame Fr_ComeFile=new JFrame("来文登记");
Fr_ComeFile.setSize(600,400);
Fr_ComeFile.setVisible(true);
}
}