Evil__spirit 2020-04-30 22:42 采纳率: 100%
浏览 3133
已采纳

创建一个窗口,输入你的学号、姓名,选择所在班级,完成信息填写后,点击按钮,弹出对话框,该提示框显示你的学号、姓名和班级,以及确定按钮,点击确定按钮,对话框消失;关闭窗口。

用Java创建一个窗口,输入你的学号、姓名,选择所在班级(班级以下拉列表的形式给出,共5个班,软件1--软件5),完成信息填写后,点击按钮,弹出对话框,该提示框显示你的学号、姓名和班级,以及确定按钮,点击确定按钮,对话框消失;关闭窗口。这个该怎么写?

  • 写回答

2条回答 默认 最新

  • HelloWorldZTR 2020-05-01 10:22
    关注

    我太懒了...

    package com.hlwdztr;
    
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    import java.awt.event.WindowAdapter;
    import java.awt.event.WindowEvent;
    
    public class Test {
        private Label xuehaoLb;
        private Label xingmingLb;
        private Label banjiLb;
    
        private Dialog info;
    
        private Frame frame;
        private TextField xuehao;
        private TextField xingming;
        private Choice banji;
        private Button okButton;
    
        private String[] ban = {"软件1","软件2","软件3","软件4","软件5"};
    
        public Test(){
            xuehaoLb = new Label("学号",Label.CENTER);
            xingmingLb = new Label("姓名",Label.CENTER);
            banjiLb = new Label("班级",Label.CENTER);
    
            frame = new Frame("窗口");
            xuehao = new TextField();
            xingming = new TextField();
            banji = new Choice();
            okButton = new Button("确定");
    
            info = new Dialog(frame);
        }
    
        private void showInfo(){
            String xuehaoStr = xuehao.getText();
            String xingmingStr = xingming.getText();
            String banjiStr = banji.getSelectedItem();
    
            Button okButton2 = new Button("确定");
            okButton2.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    System.exit(0);
                }
            });
    
            info.setTitle("对话框");
            info.setLayout(new BorderLayout());
            info.add(BorderLayout.CENTER, new Label("姓名是"+xingmingStr+'\t'+"班级是"+banjiStr+'\t'+"学号是"+xuehaoStr));
            info.add(BorderLayout.SOUTH, okButton2);
            info.addWindowListener(new WindowAdapter() {
                @Override
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
            info.pack();
            info.setAlwaysOnTop(true);
            info.setVisible(true);
        }
    
        public void show(){
            for (String item : ban) {
                banji.addItem(item);
            }
    
            okButton.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(ActionEvent e) {
                    showInfo();
                }
            });
    
            frame.setLayout(new GridLayout(4,2));
            frame.add(xuehaoLb);
            frame.add(xuehao);
            frame.add(xingmingLb);
            frame.add(xingming);
            frame.add(banjiLb);
            frame.add(banji);
            frame.add(okButton);
    //        frame.pack();
            frame.addWindowListener(new WindowAdapter() {
                @Override
                public void windowClosing(WindowEvent e) {
                    System.exit(0);
                }
            });
            frame.setSize(200, 150);
            frame.setVisible(true);
        }
    
        public static void main(String[] args) {
            Test test = new Test();
            test.show();
        }
    
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题