⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main.java

📁 这是一个简单的考试系统
💻 JAVA
字号:
package login.UI;

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Font;
import java.awt.GridLayout;
import java.awt.Label;
import java.awt.LayoutManager;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.Date;
import java.util.Vector;

import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JRadioButtonMenuItem;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.Timer;
import javax.swing.table.DefaultTableModel;

import com.pogo.Grade;
import com.pogo.Ti;
import com.tool.createGrade;
import com.tool.createName;
import com.tool.createTi;
import com.tool.createTime;
import com.tool.paixu;
import com.tool.readExcel;
import com.tool.saveGrade;
import com.tool.writeExcel;

public class main extends JFrame implements ActionListener{
	private JRadioButton ra,rb,rc,rd,r;
	private ButtonGroup jb;
	private JButton pre,next,submit;
	private ArrayList list;
	private Label la,la1,t;
	private int i=0,ge=0;
	private JPanel jp,jp1,jp2,jp3;
	private String name;
	private Timer timer;
	private int time;
	main(String name){
		super("请答题");
		this.setDefaultCloseOperation(3);
		this.setResizable(false);
		this.setLocation(300,250);
		this.setSize(350,300);
		this.name=name;
		list=createTi.run();
		if(list==null){
			JOptionPane.showMessageDialog(null, "题库错误!");
			System.exit(0);
		}
		else{
			ra=new JRadioButton(((Ti)list.get(0)).getAnswerA());
			rb=new JRadioButton(((Ti)list.get(0)).getAnswerB());
			rc=new JRadioButton(((Ti)list.get(0)).getAnswerC());
			rd=new JRadioButton(((Ti)list.get(0)).getAnswerD());
			time=createTime.run();
			ge=createTime.getG();
			r=new JRadioButton();
			jb= new ButtonGroup();
			timer=new Timer(1000,this);
			timer.start();
			pre=new JButton("上一题");
			next=new JButton("下一题");
			submit=new JButton("交卷");
			pre.addActionListener(this);
			next.addActionListener(this);
			submit.addActionListener(this);
			jp= new JPanel();
			jp.setLayout(null);
			la=new Label(((Ti)list.get(0)).getTm());
			la1=new Label(((Ti)list.get(0)).getTno()+"");
			t=new Label((int)(time/60)+"分"+time%60+"秒");
			t.setForeground(Color.red);
			jb.add(r);
			jb.add(ra);
			jb.add(rb);
			jb.add(rc);
			jb.add(rd);
			jp.add(la1);
			la1.setBounds(15, 10, 15,30);
			jp.add(la);
			la.setBounds(30, 10, 290,30);
			jp.add(ra);
			ra.setBounds(20,60, 300,30);
			jp.add(rb);
			rb.setBounds(20,100,300,30);
			jp.add(rc);
			rc.setBounds(20,140,300,30);
			jp.add(rd);
			rd.setBounds(20,180,300,30);
			jp.add(t);
			t.setBounds(20,230,60,18);
			jp.add(pre);
			pre.setBounds(90, 230, 80, 25);
			jp.add(next);
			next.setBounds(170, 230, 80, 25);
			jp.add(submit);
			submit.setBounds(250,230,80,25);
			this.getContentPane().add(jp);
			this.setVisible(true);
		}
	}
	public void actionPerformed(ActionEvent e) {
		if(e.getSource()==pre){
			if(i>0){
				Ti temp=(Ti)(list.get(i));
				if(ra.isSelected())
					temp.setSelect(ra.getText());
				if(rb.isSelected())
					temp.setSelect(rb.getText());
				if(rc.isSelected())
					temp.setSelect(rc.getText());
				if(rd.isSelected())
					temp.setSelect(rd.getText());
				this.r.setSelected(true);
				temp=(Ti)(list.get(--i));
				la1.setText(temp.getTno()+"");
				la.setText(temp.getTm());
				ra.setText(temp.getAnswerA());
				rb.setText(temp.getAnswerB());
				rc.setText(temp.getAnswerC());
				rd.setText(temp.getAnswerD());
			if(temp.getSelect()==ra.getText())
				this.ra.setSelected(true);
			if(temp.getSelect()==rb.getText())
				this.rb.setSelected(true);
			if(temp.getSelect()==rc.getText())
				this.rc.setSelected(true);
			if(temp.getSelect()==rd.getText())
				this.rd.setSelected(true);
			}			
		}
		if(e.getSource()==next){
			if(i<list.size()-1){
				Ti temp=(Ti)(list.get(i));
				if(ra.isSelected())
					temp.setSelect(ra.getText());
				if(rb.isSelected())
					temp.setSelect(rb.getText());
				if(rc.isSelected())
					temp.setSelect(rc.getText());
				if(rd.isSelected())
					temp.setSelect(rd.getText());
				this.r.setSelected(true);
				temp=(Ti)(list.get(++i));
				la1.setText(temp.getTno()+"");
				la.setText(temp.getTm());
				ra.setText(temp.getAnswerA());
				rb.setText(temp.getAnswerB());
				rc.setText(temp.getAnswerC());
				rd.setText(temp.getAnswerD());
				if(temp.getSelect()==ra.getText())
				this.ra.setSelected(true);
			if(temp.getSelect()==rb.getText())
				this.rb.setSelected(true);
			if(temp.getSelect()==rc.getText())
				this.rc.setSelected(true);
			if(temp.getSelect()==rd.getText())
				this.rd.setSelected(true);
			}
			
		}
		if(e.getSource()==submit)
		{
			jiaojuan();
		}
		if(e.getSource()==timer){
			if(time==0)
				jiaojuan();
			time--;
			t.setText((int)(time/60)+"分"+time%60+"秒");
		}
	}
	void jiaojuan(){
		Ti temp=(Ti)(list.get(i));
		if(ra.isSelected())
			temp.setSelect(ra.getText());
		if(rb.isSelected())
			temp.setSelect(rb.getText());
		if(rc.isSelected())
			temp.setSelect(rc.getText());
		if(rd.isSelected())
			temp.setSelect(rd.getText());
		int g=0;
		for(int j=0;j<list.size();j++)
		{
			g+=((Ti)list.get(j)).grade()*ge;
		}
		JOptionPane.showMessageDialog(null, name+"同学  您的得分:"+g);
		ArrayList list1=new ArrayList();
		list1=readExcel.run();
		for(int j=0;j<list1.size();j++)
			if(((Grade)list1.get(j)).getName().equals(name))
				list1.remove(j);
		Grade st=new Grade(name,g);
		list1.add(st);
		Comparator comp = new paixu();
		Collections.sort(list1,comp);
		new writeExcel(list1);
		new showTable(list1,list1.indexOf(st));
		timer.stop();
		this.dispose();
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -