首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。 注意:请勿改动main()主方法和其他已有语句内容,仅在下
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。 注意:请勿改动main()主方法和其他已有语句内容,仅在下
admin
2009-01-15
62
问题
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。
注意:请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。
程序运行结果如下:
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
public class ex22_2 extends JPanel{
ThreadProg thProgress;
JProgressBar jpb;//声明一个进程条对象
static JFrame if;
public ex22_2() {
setLayout(new BorderLayout());
jpb=new JProgressBar();
add(jpb,"Center");
JPanel btnPanel = new JPanel();
JButton btnStart = new JButton("Start");
btnPanel.add(btnStart);
btnStart.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent ae) {
_______________;
}
});
JButton btnStop = new JButton("Stop");
btnPanel.add(btnStop);
btnStop.addActionListener(new ActionListener()
public void actionPerformed(ActionEvent ae) {
____________;
}
});
add(btnPanel, BorderLayout. SOUTH);
}
public void startProgress() {
if(thProgress == null|| !thProgress.isAlive())
thProgress = new ThreadProg(jpb);
thProgress.start();
}
}
public void stopProgress() {
thProgress.setStop(true);
}
public static void main(String args[]){
jf = new JFrame("ex22_2");
ex22_2 obj22_2 = new ex22_2();
jf.getContentPane().add("Center",obj22_2);
jf.setSize(250,80);
jf.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent we) {
System.exit(O);
}
});
jf.setVisible(true);
}
}
class ThreadProg extends Thread {
private JProgressBar jpb;
private boolean bStop = false;
private boolean bAlive = false;
public ThreadProg(JProgressBar jpb){
this.jpb = jpb;
}
public void setStop(boolean b){
bStop = b;
}
public void run () {
int min = 0;
int max = 60;
jpb.setMinimum(min);
jpb.setMaximum(max);
jpb.setValue(min);
for (int x=min;x<=max;x++) (
if(bStop){
break;
}else{
jpb. setValue (x);
try {
Thread. sleep (150);
} catch (InterruptedException e) {
}
}
}
bAlive = false;
}
}
选项
答案
startProgress() stopProgress()
解析
本题主要考查swing图形用户界面编程以及多线程编程相结合。解题关键是掌握进度条JProgressBar类的基本用法及其与多线程相结合的编程方法,会继承Thread类写自己的线程类,完成需要的功能,线程的开始与暂停被封装在ThreadProg类中。本题中,第1个空,根据点击Start按钮事件调用startProgress()方法启动线程;第2个空,根据点击Stop按钮事件调用stopProgress()方法暂停线程。
转载请注明原文地址:https://jikaoti.com/ti/nNb0FFFM
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
下列叙述中正确的是
假设某个表单中有一个复选框(CheckBox1)和一个命令按钮Command1,如果要在Command1的Click事件代码中取得复选框的值,以判断该复选框是否被用户选择,正确的表达式是
首先利用表设计器在考生文件夹下建立表table3,表结构如下:民族字符型(4)数学平均分数值型(6,2)英语平均分数值型(6,2)然后在考生文件夹下创建一个名为mymenu.mnx
设计一个名为mysupply的表单,表单的控件名和文件名均为mysupply。表单的形式如下图所示。表单标题为“零件供应情况”,表格控件为Grid1,命令按钮“查询”为command1、“退出”为Command2,标签控件Label1和文本框控
在SQL语言中,删除表命令的关键词是()。
在VisualFoxPro中有如下内存变量的赋值语句:X={^2008一08一088:00:00AM)Y=.y.2="12.34"执行上述语句之后,内存变量的X、Y、Z的数据类型为()。
在表单设计器的属性窗口中设置表单或其他控件对象的属性时,以下叙述正确的是()。
在考生文件夹下完成下列操作:(1)在考生文件夹下利用查询设计器创建一个查询,从表中查询演唱“粤语”歌曲的歌手。查询结果包含歌手的姓名、语言和点歌码3个字段;各记录按“点歌码”降序排序,点歌码相同的再按“演唱者”升序排序;查询去向为表ta。最后将查询保存在
(1)建立项目文件,文件名为myproj。(2)将数据库“图书借阅”添加到项目中。(3)建立自由表mytable(不要求输入数据),表结构为:姓名字符型(8)电话号码字符型(15)性别逻辑型(4)将考生文件夹下的自由表m
关系数据库的关系演算语言是以()为基础的DML语言。
随机试题
患者,女,38岁。腰部冷痛重着,天气变化或阴雨风冷时加重。治疗除取主穴外,还应选用
施工图预算、招标标底由()组成。
成卷的半透明纸,宽30厘米
企业财务报告的使用者主要包括()。
塑造良好企业形象,属于平衡计分卡的()。
联合国《儿童权利公约》规定,对儿童的养育与发展负有首要责任的是()。
10Gbps的Ethernet局域网中的传输介质是()。
下列叙述中正确的是
Scottishfood文中女的提到“I’dliketotrysomeofthatScottishfood”,由此可得正确答案。
A、Yes,I’dloveto.B、I’mafraidnot.C、Pleasedoitforme.A
最新回复
(
0
)