首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。 注意:请勿改动main()主方法和其他已有语句内容,仅在下
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。 注意:请勿改动main()主方法和其他已有语句内容,仅在下
admin
2009-01-15
75
问题
请完成下列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全国计算机二级
相关试题推荐
在VisualFoxPro中,以下描述中错误的是
在考生文件夹下完成如下简单应用:1.用SQL语句完成下列操作:查询项目的项目号、项目名和项目使用的零件号、零件名称,查询结果按项目号降序、零件号升序排序,并存放于表item_temp中,同时将使用的SQL语句存储于新建的文本文件item.txt中。
在下面的表达式中,运算结果是逻辑假的是()。
在VisualFoxPro中,下面关于索引的描述错误的是()。
在VisualFoxPro中,下列变量中需要事先定义是()。
只能在建立它的模块中使用的变量为()。
在考生文件夹下,打开资源数据库frdb,完成如下综合应用:设计一个表单控件名为form、表单文件名为fr_show、表单标题名为“农户资源数据浏览”的表单,其表单界面如图3-23所示。其他要求如下:①为表单建立数据环境,向数据环境依次添加fr_t表(
在VisualFoxPro中,编译或连编生成的程序文件的扩展名不包括
在面向对象方法中,不属于“对象”基本特点的是
在黑盒测试方法中,设计测试用例的主要根据是
随机试题
下列有关CFP资格认证制度在我国建立和发展的说法,正确的是()。(1)CFP资格认证采用两级认证是我国选择CFP资格认证制度的首要原因(2)具有标准的操作程序和完整的继续教育要求是我国选择CFP资格认证制度的原因之一(3)2
定子总成由_______和_______组成。
献血者为A型血,经交叉配血试验,主侧不凝集而次侧凝集,受血者的血型应为
急性黄疸性肝炎病人尿中有胆红素是因为
安全生产制度类资料分为安全生产责任制度和安全生产管理制度两小类,下列()是安全生产责任制度资料。
自2011年起,我国已连续六年实施()的货币政策。
当前公安队伍正规化的重点“四统一”指的是()。
公交车突然加速或减速时,站在车上的人左右摇晃一下后又站直了,在这个过程中发挥作用的脑机制是()
远程电信会议
A、Themanfelldownwhenremovingthepainting.B、Thewallwillbedecoratedwithanewpainting.C、Thewomanlikesthepainting
最新回复
(
0
)