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

📄 myjframe.java

📁 一个小型的考试系统,可以自行判断用户的得分
💻 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 + -