📄 typeframe.java~64~
字号:
package com.svse.view;
import java.awt.BorderLayout;
import javax.swing.JFrame;
import javax.swing.JLabel;
import java.awt.Rectangle;
import java.awt.Font;
import javax.swing.JComboBox;
import javax.swing.JButton;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.Toolkit;
import java.awt.Dimension;
import com.svse.dao.QuestionDao;
import java.util.ArrayList;
import com.svse.bean.QuestionBean;
import javax.swing.JOptionPane;
public class TypeFrame extends JFrame {
LoginFrame Login;
StudentFrame Student;
public TypeFrame() {
try {
jbInit();
//设置窗体大小
this.setSize(298, 299);
// Center the window
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = this.getSize();
if (frameSize.height > screenSize.height) {
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width) {
frameSize.width = screenSize.width;
}
this.setLocation((screenSize.width - frameSize.width) / 2,
(screenSize.height - frameSize.height) / 2);
//设置可见度
this.setVisible(true);
} catch (Exception exception) {
exception.printStackTrace();
}
}
public TypeFrame(LoginFrame LoginFrame) {
this();
this.Login = LoginFrame;
}
private void jbInit() throws Exception {
getContentPane().setLayout(null);
lbl_topTitle.setFont(new java.awt.Font("宋体", Font.BOLD, 16));
lbl_topTitle.setText("欢迎使用考试题库系统");
lbl_topTitle.setBounds(new Rectangle(63, 21, 185, 25));
lbl_answerWise.setText("答题方式:");
lbl_answerWise.setBounds(new Rectangle(62, 83, 66, 15));
cbo_answerWise.setBounds(new Rectangle(131, 79, 105, 23));
cbo_answerWise.addActionListener(new
TypeFrame_cbo_answerWise_actionAdapter(this));
cbo_subjectType.setBounds(new Rectangle(131, 126, 105, 23));
lbl_subjectType.setText("科目类型:");
lbl_subjectType.setBounds(new Rectangle(62, 130, 66, 15));
btn_ok.setBounds(new Rectangle(72, 189, 72, 25));
btn_ok.setText("确 定");
btn_ok.addActionListener(new TypeFrame_btn_ok_actionAdapter(this));
btn_back.setBounds(new Rectangle(166, 189, 72, 25));
btn_back.setText("返 回");
btn_back.addActionListener(new TypeFrame_btn_back_actionAdapter(this));
this.getContentPane().add(lbl_topTitle);
this.getContentPane().add(cbo_answerWise);
this.getContentPane().add(lbl_answerWise);
this.getContentPane().add(lbl_subjectType);
this.getContentPane().add(cbo_subjectType);
this.getContentPane().add(btn_back);
this.getContentPane().add(btn_ok);
setItem1();
setItem2();
}
//为下拉列表赋值
public void setItem1() {
this.cbo_answerWise.addItem("练习");
this.cbo_answerWise.addItem("考试");
}
public void setItem2() {
this.cbo_subjectType.addItem("Java");
this.cbo_subjectType.addItem("Html");
this.cbo_subjectType.addItem("JavaScript");
this.cbo_subjectType.addItem("Sqlsever");
}
JLabel lbl_topTitle = new JLabel();
JLabel lbl_answerWise = new JLabel();
JComboBox cbo_answerWise = new JComboBox();
JComboBox cbo_subjectType = new JComboBox();
JLabel lbl_subjectType = new JLabel();
JButton btn_ok = new JButton();
JButton btn_back = new JButton();
//全局变量
int idenx = 0; //给题目赋值时的变量
int sum = 0; //选择题目类型时候的变量
ArrayList<QuestionBean> list; //用创建对象来承接dao中的值
QuestionDao dao = new QuestionDao();
String Answer;
//给下一个界面赋值
public void showInfo() {
QuestionBean bean = list.get(idenx); //现在的list还是空的
Student.txt_title.setText(bean.getTitle());
Student.txt_optionA.setText(bean.getOptionA());
Student.txt_optionB.setText(bean.getOptionB());
Student.txt_optionC.setText(bean.getOptionC());
Student.txt_optionD.setText(bean.getOptionD());
Answer = bean.getAnswer();
}
//确定按钮
int courseID;
QuestionDao dao;
int fenshu;
public void btn_ok_actionPerformed(ActionEvent e) {
StudentFrame frm = new StudentFrame(this); //创建题目窗口的对象,将自己传过去
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
Dimension frameSize = frm.getSize();
if (frameSize.height > screenSize.height) {
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width) {
frameSize.width = screenSize.width;
}
frm.setLocation((screenSize.width - frameSize.width) / 2,
(screenSize.height - frameSize.height) / 2);
frm.setVisible(true); //显示题目窗口
this.setVisible(false); //将自己隐藏
//如果是练习
//得到用户选择的方式
String fangshi = (String)this.cbo_answerWise.getSelectedItem();
if (fangshi.equals("练习")) {
//得到用户选择的课程
String type = (String)this.cbo_subjectType.getSelectedItem();
if (type.equals("JAVA")) {
courseID = 1;
} else if (type.equals("HTML")) {
courseID = 2;
} else if (type.equals("JavaScript")) {
courseID = 3;
} else if (type.equals("Sqlserver")) {
courseID = 4;
} else {
JOptionPane.showMessageDialog(this, "请选择您需要练习的课程!");
}
dao = new QuestionDao();
frm.list = dao.getAll(courseID);
//设置交卷按钮为不可编辑
frm.btn_submit.setEnabled(false);
} else { //如果选择的是考试
dao = new QuestionDao();
frm.list = dao.getAll(0);
}
//去数据库验证
frm.showInfo();
}
//返回按钮的单击事件
public void btn_back_actionPerformed(ActionEvent e) {
//弹出上一个界面
this.Login.setVisible(true);
this.setVisible(false);
}
//答题方式 设置可见度
public void cbo_answerWise_actionPerformed(ActionEvent e) {
String answerWise = (String)this.cbo_answerWise.getSelectedItem();
if (answerWise.equals("练习")) {
this.lbl_subjectType.setVisible(true);
this.cbo_subjectType.setVisible(true);
} else {
this.lbl_subjectType.setVisible(false);
this.cbo_subjectType.setVisible(false);
}
}
}
class TypeFrame_cbo_answerWise_actionAdapter implements ActionListener {
private TypeFrame adaptee;
TypeFrame_cbo_answerWise_actionAdapter(TypeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.cbo_answerWise_actionPerformed(e);
}
}
class TypeFrame_btn_back_actionAdapter implements ActionListener {
private TypeFrame adaptee;
private ActionEvent e;
TypeFrame_btn_back_actionAdapter(TypeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent actionEvent) {
adaptee.btn_back_actionPerformed(e);
}
}
class TypeFrame_btn_ok_actionAdapter implements ActionListener {
private TypeFrame adaptee;
private ActionEvent e;
TypeFrame_btn_ok_actionAdapter(TypeFrame adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent actionEvent) {
adaptee.btn_ok_actionPerformed(e);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -