import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;

public class EnterTitle extends JFrame implements ActionListener {
    private JLabel jLabel1, jLabel2, jLabel3, jLabel4;
    private JTextField jtf1, jtf2, jtf3, jtf4;
    private JComboBox jcb1, jcb2, jcb3, jcb4;
    private JTextArea jTextArea;
    private JScrollPane jScrollPane;
    private Container container;
    private JButton jb1, jb2;

    public EnterTitle() {
        container = getContentPane();
        container.setLayout(null);
        jScrollPane = new JScrollPane();
        jLabel1 = new JLabel("A:");
        jLabel2 = new JLabel("B:");
        jLabel3 = new JLabel("C:");
        jLabel4 = new JLabel("D:");
        jtf1 = new JTextField();
        jtf2 = new JTextField();
        jtf3 = new JTextField();
        jtf4 = new JTextField();
        jcb1 = new JComboBox();
        jcb2 = new JComboBox();
        jcb3 = new JComboBox();
        jcb4 = new JComboBox();
        jcb1.addActionListener(this);
        jcb2.addActionListener(this);
        jcb3.addActionListener(this);
        jcb4.addActionListener(this);
        jb1 = new JButton("录入");
        jb1.setBorder(BorderFactory.createRaisedBevelBorder());
        jb1.addActionListener(this);
        jb2 = new JButton("重置");
        jb2.setBorder(BorderFactory.createRaisedBevelBorder());
        jb2.addActionListener(this);
        jTextArea = new JTextArea();
        jTextArea.setText("请输入题目");
        jScrollPane.setViewportView(jTextArea);
    }

    public void launch() {
        jcb1.addItem("请选择分数");
        jcb1.addItem("1");
        jcb1.addItem("2");
        jcb1.addItem("3");
        jcb1.addItem("4");
        jcb1.addItem("5");
        jcb2.addItem("请选择分数");
        jcb2.addItem("1");
        jcb2.addItem("2");
        jcb2.addItem("3");
        jcb2.addItem("4");
        jcb2.addItem("5");
        jcb3.addItem("请选择分数");
        jcb3.addItem("1");
        jcb3.addItem("2");
        jcb3.addItem("3");
        jcb3.addItem("4");
        jcb3.addItem("5");
        jcb4.addItem("请选择分数");
        jcb4.addItem("1");
        jcb4.addItem("2");
        jcb4.addItem("3");
        jcb4.addItem("4");
        jcb4.addItem("5");
        jScrollPane.setBounds(20, 20, 345, 150);
        jLabel1.setBounds(20, 180, 30, 30);
        jtf1.setBounds(40, 180, 225, 30);
        jcb1.setBounds(275, 180, 90, 30);
        jLabel2.setBounds(20, 220, 30, 30);
        jtf2.setBounds(40, 220, 225, 30);
        jcb2.setBounds(275, 220, 90, 30);
        jLabel3.setBounds(20, 260, 30, 30);
        jtf3.setBounds(40, 260, 225, 30);
        jcb3.setBounds(275, 260, 90, 30);
        jLabel4.setBounds(20, 300, 30, 30);
        jtf4.setBounds(40, 300, 225, 30);
        jcb4.setBounds(275, 300, 90, 30);
        jb1.setBounds(20, 360, 130, 30);
        jb2.setBounds(235, 360, 130, 30);
        container.add(jLabel1);
        container.add(jLabel2);
        container.add(jLabel3);
        container.add(jLabel4);
        container.add(jtf1);
        container.add(jtf2);
        container.add(jtf3);
        container.add(jtf4);
        container.add(jb1);
        container.add(jb2);
        container.add(jcb1);
        container.add(jcb2);
        container.add(jcb3);
        container.add(jcb4);
        container.add(jScrollPane);
        setTitle("录入题目");
        setVisible(true);
        setSize(400, 450);
        setResizable(false);
        setLocationRelativeTo(getOwner());
    }

    @Override
    public void actionPerformed(ActionEvent e) {
        if (e.getActionCommand().equals("重置")) {
            reset();
            JOptionPane.showMessageDialog(null, "重置成功!");
        }
        if (e.getActionCommand().equals("录入")) {
            if (jTextArea.getText().isEmpty()) {
                JOptionPane.showMessageDialog(null, "问题不能为空!");
            } else if (jcb1.getSelectedItem().equals("请选择分数") || jcb2.getSelectedItem().equals("请选择分数")
                    || jcb3.getSelectedItem().equals("请选择分数") || jcb4.getSelectedItem().equals("请选择分数")) {
                JOptionPane.showMessageDialog(null, "请选择分数!");
            } else {
                try {
                    outPut();
                } catch (IOException ioException) {
                    ioException.printStackTrace();
                }
            }
        }
    }

    public void reset() {
        jTextArea.setText("");
        jtf1.setText("");
        jtf2.setText("");
        jtf3.setText("");
        jtf4.setText("");
    }

    public void outPut() throws IOException {
        File file = new File("./lib/QuestionBank.txt");
        FileOutputStream fileOutputStream = null;
        if (!file.exists()) {
            file.createNewFile();//如果文件不存在,就创建该文件
            fileOutputStream = new FileOutputStream(file);//首次写入获取
        } else {
            //如果文件已存在,那么就在文件末尾追加写入
            fileOutputStream = new FileOutputStream(file, true);//这里构造方法多了一个参数true,表示在文件末尾追加写入
        }
        OutputStreamWriter writer = new OutputStreamWriter(fileOutputStream, "UTF-8");//指定以UTF-8格式写入文件
        String line = jTextArea.getText() + " A " + jtf1.getText() + " " + jcb1.getSelectedItem() +
                " B " + jtf2.getText() + " " + jcb2.getSelectedItem() + " C " + jtf3.getText() +
                " " + jcb3.getSelectedItem() + " D " + jtf4.getText() + " " + jcb4.getSelectedItem() + "\n";
        writer.write(line);
        writer.close();
    }
}
最近下载更多
wanglinddad  LV55 2024年3月9日
fenghuijun  LV26 2024年1月13日
计算机暴龙战士  LV19 2024年1月5日
305865088  LV8 2023年12月15日
Seaskye  LV14 2023年11月28日
2410068425  LV23 2023年11月27日
最代码官方  LV168 2023年11月26日
最近浏览更多
暂无贡献等级
ddman9009  LV25 7月4日
Hhuu88 6月16日
暂无贡献等级
120_wu  LV4 2024年12月3日
yimaoermao  LV1 2024年11月28日
微信网友_6234675614470144  LV1 2024年10月28日
Peny_ZH  LV5 2024年9月20日
thsgli  LV9 2024年8月21日
hmf1989 2024年7月25日
暂无贡献等级
zzs269285304  LV7 2024年7月17日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友