Java中的窗口应用程序的设计
1.创建一个窗口程序(JFrame),标题栏起名为“浏览器”,有一个菜单条,有“文件”、“编辑”、“查看”3个菜单。“文件”菜单有两个菜单项,一项是“打开”,一项是“保存”,“打开”项做成子菜单,有两个菜单项“打开x”和“打开y”,“保存”项就是普通的菜单项。“编辑”菜单就一个菜单项“复制”。“查看”有两个菜单项“停止”和“刷新”。在菜单及菜单项上添加合适的快捷键。
package window;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
import javax.swing.*;
public class frame {
public static void main(String[] args) {
// TODO 自动生成的方法存根
FirstWindow win=new FirstWindow("浏览器");
}
}
class FirstWindow extends JFrame{
JMenuBar menubar;
JMenu menu1,menu2,menu3,menu4;
JMenuItem item1,item2,item3,item4,item5;
FirstWindow(String s){
setTitle(s);
setSize(400,300);
setLocation(120,120);
setVisible(true);
menubar=new JMenuBar();
menu1=new JMenu("文件(F)");
menu1.setMnemonic('F');
menu2=new JMenu("编辑(E)");
menu2.setMnemonic('F');
menu3=new JMenu("查看(V)");
menu3.setMnemonic('V');
menu4=new JMenu("打开(O)");
menu4.setMnemonic('O');
item2=new JMenuItem("保存",new ImageIcon("save.gif"));
item2.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
item3=new JMenuItem("复制",new ImageIcon("copy.gif"));
item3.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,InputEvent.CTRL_MASK));
item4=new JMenuItem("停止",new ImageIcon("stop.gif"));
item4.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_T,InputEvent.CTRL_MASK));
item5=new JMenuItem("刷新",new ImageIcon("Snew.gif"));
item5.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,InputEvent.CTRL_MASK));
menu1.add(menu4);
menu4.add(new JMenuItem("打开x",new ImageIcon("open.gif")));
menu4.add(new JMenuItem("打开y",new ImageIcon("open.gif")));
menu1.addSeparator();
menu1.add(item2);
menu2.add(item3);
menu3.add(item4);
menu3.add(item5);
menubar.add(menu1);
menubar.add(menu2);
menubar.add(menu3);
setJMenuBar(menubar);
validate();
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
}
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人