首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。 注意:请勿改动main()主方法和其他已有语句内容,仅在下
请完成下列Java程序;创建一个进度条,可以控制其开始和暂停。要求进度条与线程关联,由线程控制,点击Start按钮开始进度条的滚动,点击Stop按钮,暂停,继续点击Start按钮则继续进行。 注意:请勿改动main()主方法和其他已有语句内容,仅在下
admin
2009-01-15
48
问题
请完成下列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全国计算机二级
相关试题推荐
软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。下面属于系统软件的是
设树T的深度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1。则T中的叶子结点数为
创建一个名为student的新类,保存新类的类库名称是mylib,新类的父类是Person,正确的命令是
在考生文件夹下完成如下简单应用:1.用SQL语句完成下列操作:列出所有与“红”颜色零件相关的信息(供应商号、工程号和数量),并将查询结果按数量降序存放于表supply_temp中。2.新建一个名为menu_quick的快捷菜单,菜单中有两个菜单
设计一个名为mysupply的表单,表单的控件名和文件名均为mysupply。表单的形式如下图所示。表单标题为“零件供应情况”,表格控件为Grid1,命令按钮“查询”为command1、“退出”为Command2,标签控件Label1和文本框控
在考生文件夹下完成下列操作:1.修改并执行程序temp。该程序的功能是根据“教师表”和“课程表”计算讲授“数据结构”这门课程,并且“工资”大于等于4000的教师人数。注意:只能修改标有错误的语句行,不能修改其他语句。2.在“学校”数据库
(1)新建一个不包含任何控件的空表单myform.scx(表单名和表单文件名均为myform)。(2)打开表单文件formtwo.scx,将表单的标题设为“计算机等级考试”。(3)打开表单文件formthree.scx,使用布局工具栏操作使表单上的4个
以下描述中,不是线性表顺序存储结构特征的是()。
在数据库系统的内部结构体系中,索引属于()。
使用如下3个数据库表:职员.dbf:职员号C(3),姓名C(6),性别C(2),组号N(1),职务C(10)客户.dbf:客户号C(4),客户名C(36),地址C(36),所在城市C(36)订单.dbf:订单号C(4),客户名C(4),职员号C(
随机试题
根据市场中经常出现的规律性现象制定的交易型策略包括()。Ⅰ.均值-回归策略Ⅱ.买入持有策略Ⅲ.动量策略Ⅳ.趋势策略
受诉机关应自接到或收到投诉的次日起多少天内对投诉事项依法作出处理
简述定置管理的具体要求。
A.急性HBV感染早期,HBV复制活跃B.急性或慢性感染,HBV复制减弱C.急性或慢性感染,HBV复制活跃D.既往HBV感染,未产生抗-HBSE.HBV复制停止
腹外疝术后护理中不正确的是
《2000年国际贸易术语解释通则》的贸易术语中,卖方承担最大责任的是()。
土地权利的概念及特征所包含的内容有()。
下列各项中,属于建筑单位工程预算的是()。
下列关于《玻璃幕墙工程技术规范》的强制性条文的说法中,正确的包括()。
PoordietistheleadingcauseofmortalityintheUnitedStates.【C1】________innutritionscienceandpolicynow【C2】________ar
最新回复
(
0
)