首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。 注意:请勿改动main()主方法和其他已有语句内容,仅在下
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。 注意:请勿改动main()主方法和其他已有语句内容,仅在下
admin
2009-01-15
21
问题
请完成下列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://kaotiyun.com/show/JUnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
面向对象方法中,继承是指
在数据库表中,要求指定字段或表达式不出现重复值,应该建立的索引是
下列排序方法中,最坏情况下比较次数最少的是
在考生文件夹下完成下列操作:1.将歌手比赛分为4个组,“歌手表”中的“歌手编号”字段的左边两位表示该歌手所在的组号。考生文件夹下的程序文件five.prg的功能是:根据“歌手表”计算每个组的歌手人数,将结果存入表one,表one中有“组号”和“歌
下列关于变量的叙述中,正确的一项是()。
在数据库系统的内部结构体系中,索引属于()。
把一个项目编译成一个应用程序时,下面的叙述正确的是()。
(1)打开表单one,如图3-21所示,通过设置控件的相关属性,使得表单运行时的开始焦点在“打开”命令按钮,并且接下来的焦点的移动顺序是“关闭”和“退出”。(2)打开表单two,使用“布局”工具栏的“顶边对齐”按钮将表单中的3个命令按钮控件的顶边对齐。
负责数据库中查询操作的数据库语言是
在关系模型中,每个关系模式中的关键字
随机试题
行政立法除应遵循我国立法的一般原则外,还应遵循以下几项特殊原则
1912年3月颁布的《中华民国临时约法》规定:“中华民国之主权,属于国民全体。”这句话从根本上颠覆了以下观念中的()。
刻录机主要功能是将大量的()刻录CD—R或者CD—RW上,在信息量如此巨大的当今时代,光盘的容量巨大、保存性能良好且成本低廉,无疑是用户保存信息的最好选择。
在UNIX系统中,对中断事件和异常情况的处理过程有什么区别?
龋病病因现代概念正确的是
FIDIC合同条件规定,监理工程师在费用管理方面权利有()。
霍华德提出的田园城市的图解方案的核心是()。
特莱维萨电视公司
在面向对象模型中,每一个对象是状态和______的封装。
Foryears,doctorshavegivencancerpatientsthreemaintreatments:surgery,radiationandchemotherapy.Nowresearchersared
最新回复
(
0
)