重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
给事件队列发一个点击事件即可,按钮(JButton)本身就有一个doClick方法,或者Toolkit.getDefaultToolkit().getSystemEventQueue().postEvent一个MouseEvent即可
成都创新互联长期为1000+客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为古冶企业提供专业的成都网站设计、做网站,古冶网站改版等技术服务。拥有十多年丰富建站经验和众多成功案例,为您定制开发。
(1)定义一个“题目”类,属性:题号,用户答案,标准答案,题目
(2)定义一个 “题目”集合,用于保存这4道题
(3)界面中定义题目+4个选项,一个 init(int num)方法,num是题号,默认是1(当打开界面时显示第一题),init的内容是显示“题号+题目+4个选项+判断”
单选按钮上“判断”:根据num查找题目对象obj,
if(选项value=obj.用户答案) { selected="selected" } selected="selected" 是单选按钮的属性,表示选中(因为一开始用户答案是null,所以刚看到新题目时没有选种任何选项)
(4)当选种选项后点下一题,执行update方法:
根据题号,对“题目集合”中 的一个题目对象的“用户答案”进行赋值,把num(题号)加1,然后执行init方法,让界面显示下一道题,因为是新题(该题的用户答案为null),任何选项都不会选种。
(5)做完题目,点上一题,num-1,执行init,init会根据num查找“题目集合”中的题目对象,判断“用户答案”是3,当4个选项逐一判断后,就只有C(value=3)被选中,也就是显示用户刚刚选中的那个答案。
以上,仅供参考。只是提供思路,不帮实现代码,望理解。
打开界面是,
package com;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Random;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class TestThree extends JFrame implements ActionListener {
JTextField tTi, tAnswer;
JLabel lTi, lAnswer;
JPanel myPanel1, myPanel2, myPanel3;
JButton bt1;
static int r = 0;
private int count=0;
public TestThree() {
myPanel1 = new JPanel();
myPanel2 = new JPanel();
myPanel3 = new JPanel();
tTi = new JTextField(8);
tAnswer = new JTextField(8);
lTi = new JLabel("题目");
lAnswer = new JLabel("答案");
bt1 = new JButton("下一题");
Container con = getContentPane();
con.setLayout(null);
myPanel1.add(lTi);
myPanel1.add(tTi);
myPanel2.add(lAnswer);
myPanel2.add(tAnswer);
myPanel3.add(bt1);
myPanel1.setBounds(120, 50, 180, 30);
myPanel2.setBounds(120, 90, 180, 30);
myPanel3.setBounds(120, 130, 180, 30);
con.add(myPanel1);
con.add(myPanel2);
con.add(myPanel3);
this.setTitle("计算测试");
this.setBounds(100, 100, 400, 300);
this.setVisible(true);
bt1.addActionListener(this);
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
fuzhi();
}
private void fuzhi() {
count++;
Random random = new Random();
int a = 0, b = 0, c = 0;
a = random.nextInt(100);
b = random.nextInt(100);
c = random.nextInt(2);
if (c == 1) {
tTi.setText(a + "加" + b);
int i = a + b;
String j = tAnswer.getText();
int y = Integer.parseInt("".equals(j) ? "0" : j);
if (i == y) {
r++;
}
}
if (c == 0) {
tTi.setText(a + "减" + b);
int i = a - b;
String j = tAnswer.getText();
int y = Integer.parseInt("".equals(j) ? "0" : j);
if (i == y) {
r++;
}
}
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == bt1) {
if(count==3){
tAnswer.setText("你的得分为:"+r+"分");
}else{
tTi.setText("");
tAnswer.setText("");
fuzhi();
}
}
}
public static void main(String[] args) {
new TestThree();
}
}
这个要给你完整些比较麻烦,给你提供个思路,
给上一题按键添加单击监听事件,然后点击时获得面板上当前信息判断这一题为第几题,将上一题的题号作为参数传入JDBC的查询部分,然后从数据库中查的数据后,将值赋值到文本域面板中。
具有再碰到不明白的地方可以izhuiwen
java课程设计题目及代码分别是:
1、题目:计算器。设计内容是设计一个图形界面(GUI)的计算器应用程序,完成简单的算术运算。
设计要求是设计的计算器应用程序可以完成家法、减法、乘法、除法和取余运算。且有小数点、正负号、求倒数、退格和清零功能。
2、代码:
数字按钮NumberButton类如下:
import java.awt.
import java.awt.event.
import javax.swing.
public class NumberButton extends Button.
{
int number.
public NumberButton(int number).
{
super(""+number).
this.number=number.
setForeground(Color.blue).
}
public int getNumber().
{
return number;
}
}
其它java课程设计题目及代码是:
题目:华容道。编写一个按钮的子类,使用该子类创建的对象代表华容道中的人物。通过焦点事件控制人物颜色,当人物获得焦点时颜色为蓝色,当失去焦点时颜色为灰色。
通过键盘事件和鼠标事件来实现曹操、关羽等人物的移动。当人物上发生鼠标事件或键盘事件时,如果鼠标指针的位置是在人物的下方(也就是组件的下半部分)或按下键盘的“↓“键,该人物向下移动。向左、向右和向上的移动原理类似。
代码是:
String name[]={"曹操","关羽","张","刘","马","许","兵","兵","兵","兵"}.
for(int i=0;iname.length;i++).
{
person[i]=new Person(i,name[i]).
person[i].addKeyListener(this).
person[i].addMouseListener(this).
// person[i].addFocusListener(new Person).
add(person[i]).
}
person[0].setBounds(104,54,100,100).
person[1].setBounds(104,154,100,50).
person[2].setBounds(54,154,50,100).
person[3].setBounds(204,154,50,100).
person[4].setBounds(54,54,50,100).
person[5].setBounds(204,54,50,100);
person[6].setBounds(54,254,50,50);
person[7].setBounds(204,254,50,50);
person[8].setBounds(104,204,50,50);
person[9].setBounds(154,204,50,50);