📄 myjframe.java
字号:
package com.ui;
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.List;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import com.popj.Exercise;
import com.popj.People;
import com.util.CreateExercise;
import com.util.dealWithPeople;
import java.util.*;
public class MyJFrame extends JFrame implements ActionListener{
private JLabel jlNum;
private JLabel jlContent;
private JRadioButton jra,jrb,jrc,jrd,jre;
private ButtonGroup bg;
private JButton jbjiao,jbView,jbExit;
private List<Exercise> lisEx;
private int currentNum=1;
private JButton pre,next;
private Exercise ex;
private int score=0;
private String user="";
private JTable jt;
public MyJFrame(String user)
{
super();
this.setBounds(300,300,600,400);
this.setDefaultCloseOperation(3);
this.user=user;
init();
this.setVisible(true);
}
private void init() {
JPanel top,middle,bottom,south;
top=new JPanel();
middle=new JPanel();
bottom=new JPanel();
south=new JPanel();
// this.setLayout(new FlowLayout());
lisEx=CreateExercise.create();
ex=lisEx.get(currentNum-1);
jlNum=new JLabel(""+currentNum);
Container con=new Container();
con.setLayout(new BorderLayout());
// con.add(jlNum);
jlContent=new JLabel(ex.getContext());
// con.add(jlContent);
jra=new JRadioButton(ex.getAnA());
// jra.setSelected(true);
jrb=new JRadioButton(ex.getAnB());
jrc=new JRadioButton(ex.getAnC());
jrd=new JRadioButton(ex.getAnD());
jre=new JRadioButton();
bg=new ButtonGroup();
bg.add(jra);
bg.add(jrb);
bg.add(jrc);
bg.add(jrd);
bg.add(jre);
pre=new JButton("上一题");
pre.setEnabled(false);
pre.addActionListener(this);
next=new JButton("下一题");
next.addActionListener(this);
jbjiao=new JButton("交卷");
jbjiao.addActionListener(this);
jbView=new JButton("查看");
jbView.setEnabled(false);
jbView.addActionListener(this);
jbExit=new JButton("退出");
jbExit.addActionListener(this);
top.setLayout(new BorderLayout());
top.add(jlNum,"West");
top.add(jlContent,"Center");
middle.add(jra);
middle.add(jrb);
middle.add(jrc);
middle.add(jrd);
bottom.add(pre);
bottom.add(next);
south.add(jbjiao);
south.add(jbView);
south.add(jbExit);
con.add(top,"North");
con.add(middle,"Center");
con.add(bottom,"South");
JPanel jp2=new JPanel();
jp2.setLayout(new BorderLayout());
jp2.add(con,"North");
jp2.add(south,"Center");
// Vector vtitle,vall;
// DefaultTableModel dm;
// vtitle=new Vector();
// vtitle.add("姓名");
// vtitle.add("分数");
// vall=new Vector();
// dm=new DefaultTableModel(vall,vtitle);
// jt=new JTable(dm);
this.getContentPane().add(jp2,"North");
// this.getContentPane().add(new JScrollPane(jt),"Center");
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==next)
{
currentNum++;
if(currentNum>=1)
{
pre.setEnabled(true);
}
if(jra.isSelected())
{
ex.setAnSwer(jra.getText().trim());
}
if(jrb.isSelected())
{
ex.setAnSwer(jrb.getText().trim());
}
if(jrc.isSelected())
{
ex.setAnSwer(jrc.getText().trim());
}
if(jrd.isSelected())
{
ex.setAnSwer(jrd.getText().trim());
}
// System.out.println(ex.getAnSwer());
// System.out.println(ex.getAnCrr());
ex.judge();
if(currentNum<=lisEx.size())
{
jre.setSelected(true);
ex=lisEx.get(currentNum-1);
jlNum.setText(""+ex.getNum());
jlContent.setText(ex.getContext());
jra.setText(ex.getAnA());
jrb.setText(ex.getAnB());
jrc.setText(ex.getAnC());
jrd.setText(ex.getAnD());
String str1="";
str1=ex.getAnSwer();
if(str1!=null&&str1.equals(jra.getText()))
{
jra.setSelected(true);
}
if(str1!=null&&str1.equals(jrb.getText()))
{
jrb.setSelected(true);
}
if(str1!=null&&str1.equals(jrc.getText()))
{
jrc.setSelected(true);
}
if(str1!=null&&str1.equals(jrd.getText()))
{
jrd.setSelected(true);
}
// System.out.println(ex.getAnC());
}
else
{
next.setEnabled(false);
}
}
if(e.getSource()==pre)
{
currentNum--;
if(currentNum<lisEx.size())
{
next.setEnabled(true);
}
if(jra.isSelected())
{
ex.setAnSwer(jra.getText());
}
if(jrb.isSelected())
{
ex.setAnSwer(jrb.getText());
}
if(jrc.isSelected())
{
ex.setAnSwer(jrc.getText());
}
if(jrd.isSelected())
{
ex.setAnSwer(jrd.getText());
}
if(currentNum>=1)
{
ex=lisEx.get(currentNum-1);
jlNum.setText(""+ex.getNum());
jlContent.setText(ex.getContext());
jra.setText(ex.getAnA());
jrb.setText(ex.getAnB());
jrc.setText(ex.getAnC());
jrd.setText(ex.getAnD());
String str1;
str1=ex.getAnSwer();
if(str1!=null&&str1.equals(jra.getText()))
{
jra.setSelected(true);
}
if(str1!=null&&str1.equals(jrb.getText()))
{
jrb.setSelected(true);
}
if(str1!=null&&str1.equals(jrc.getText()))
{
jrc.setSelected(true);
}
if(str1!=null&&str1.equals(jrd.getText()))
{
jrd.setSelected(true);
}
}
else
{
pre.setEnabled(false);
}
}
if(e.getSource()==jbExit)
{
dispose();
new LoginFrame();
}
if(e.getSource()==jbView)
{
for (int i = 0; i < lisEx.size(); i++) {
score+=lisEx.get(i).getScore();
}
// System.out.println(score);
Vector vtitle,vall;
DefaultTableModel dm;
vtitle=new Vector();
vtitle.add("姓名");
vtitle.add("分数");
vall=new Vector();
dm=new DefaultTableModel(vall,vtitle);
jt=new JTable(dm);
this.getContentPane().add(new JScrollPane(jt),"Center");
List<People> list1=dealWithPeople.readAllRecord();
for(int i=0;i<list1.size();i++)
{
Vector vline = new Vector();
vline.add(list1.get(i).getName());
vline.add(list1.get(i).getScore()+"");
vall.add(vline);
}
this.show();
score=0;
}
if(e.getSource()==jbjiao)
{
for (int i = 0; i < lisEx.size(); i++) {
score+=lisEx.get(i).getScore();
}
dealWithPeople.writeARecord(user,score);
jbView.setEnabled(true);
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -