编写一个图形用户界面,实现菜单的功能。

题目:编写一个图形用户界面,实现菜单的功能。有3个一级菜单项:File、Edit和Help。在File菜单项中,有3个二级菜单项:New、Open和Save。在Edit菜单项中,有3个二级菜单项:Copy、Cut和Paste。在Help菜单项中,有一个二级菜单项About。对于每一个二级菜单项,不必真正实现其功能,只要演示它能响应鼠标单击事件即可,如弹出一个对话框或打印一句话。

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;

public class MenuDemo extends JFrame implements ActionListener{
    
    public static void main(String[] args){
        MenuDemo demo = new MenuDemo();
        demo.go();
    }
    
    public void go(){
        this.setTitle("图形用户界面");
        this.setBounds(600, 150, 500, 150);
        this.setVisible(true);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setLocationRelativeTo(null);
        //创建菜单  
        JMenuBar jmb = new JMenuBar();
        //不能设定位置,会自动放在最上部
        this.setJMenuBar(jmb);
        //添加菜单
        JMenu menu1 = new JMenu("File");
        JMenu menu2 = new JMenu("Edit");
        JMenu menu3 = new JMenu("Help");
        JMenuItem item1 = new JMenuItem("New");
        JMenuItem item2 = new JMenuItem("Open");
        JMenuItem item3 = new JMenuItem("Save");
        JMenuItem item4 = new JMenuItem("Copy");
        JMenuItem item5 = new JMenuItem("Cut");
        JMenuItem item6 = new JMenuItem("Paste");
        JMenuItem item7 = new JMenuItem("About");
        //添加菜单项至菜单上  
        menu1.add(item1);
        menu1.add(item2);
        menu1.add(item3);
        menu2.add(item4);
        menu2.add(item5);
        menu2.add(item6);
        menu3.add(item7);
        //将菜单加入至菜单条  
        jmb.add(menu1);
        jmb.add(menu2);
        jmb.add(menu3);
        item1.addActionListener(this);
        item2.addActionListener(this);
        item3.addActionListener(this);
        item4.addActionListener(this);
        item5.addActionListener(this);
        item6.addActionListener(this);
        item7.addActionListener(this);
    }
    
    @Override
    public void actionPerformed(ActionEvent e){
        String str = e.getActionCommand();
        if("New".equals(str)) {
            System.out.println("New正在被点击");
        }
        else if("Open".equals(str)){
            System.out.println("Open正在被点击");
        }
        else if("Save".equals(str)){
            System.out.println("Save正在被点击");
        }
        else if("Copy".equals(str)){
            System.out.println("Copy正在被点击");
        }
        else if("Cut".equals(str)){
            System.out.println("Cut正在被点击");
        }
        else if("Paste".equals(str)){
            System.out.println("Paste正在被点击");
        }
        else{
            System.out.println("About正在被点击");
        }
    }
}

运行效果:


   

  • 6
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,下面是一些基本的实现思路: 1. 数据存储:使用文本文件存储图书信息,每行表示一本书,数据格式为"书名,作者,出版社,数量"。在程序启动时,读取文件中的数据并加载到内存中,可以使用ArrayList等容器类方便后续操作。 2. 图书信息显示:使用Java Swing中的JTable控件展示所有图书信息,可以通过JScrollPane控件实现滚动条。可以在表头上添加按钮,实现按书名、作者、出版社、数量排序,使用JComboBox控件实现下拉菜单选择排序方式。在表格中添加一列复选框或者单选框,表示选择要借阅的图书。 3. 图书信息查找:使用文本框和搜索按钮实现按书名、作者、出版社查找相关图书。可以使用Java的正则表达式实现模糊匹配,在表格中显示匹配的结果。 4. 图书借阅:添加按钮实现借阅操作。需要检查借阅数量是否超过限制(最多借阅3本,同一本书最多借阅2本),并且需要判断图书的数量是否足够。借阅成功后,更新内存中的图书数量和借阅记录,将借阅记录写入文本文件。 5. 借阅记录:使用文本文件存储借阅记录,每行表示一条记录,数据格式为"借阅人,书名,借阅时间,归还时间"。在程序启动时,读取文件中的数据并加载到内存中。可以使用JTable控件展示借阅记录,实现按借阅人、书名、借阅时间、归还时间排序等功能。 以上是Java编写图书借阅系统的一些基本思路,具体实现需要根据实际需求进行设计和编写

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值