java button 实现暂停 继续的功能
在java程序中添加了一个button用于暂停线程、继续线程的,点击button的时候暂停,再点击一次,继续做了,但是没有预期的效果,求java高手,帮忙解决,谢谢,请h...
在java程序中添加了一个button
用于暂停线程、继续线程的,点击button的时候
暂停,再点击一次,继续
做了,但是没有预期的效果,求java高手,帮忙解决,谢谢,
请hi我 展开
用于暂停线程、继续线程的,点击button的时候
暂停,再点击一次,继续
做了,但是没有预期的效果,求java高手,帮忙解决,谢谢,
请hi我 展开
1个回答
展开全部
很简单,我给你写一个Demo:
import java.awt.event.*;
import javax.swing.*;
public class Demo extends Thread {
private JFrame frm = new JFrame("Demo");
private JButton btnPause = new JButton("Pause");
private JLabel lblTest = new JLabel("0");
private boolean isPaused = false;
private int seconds = 0;
public void run () {
while (true) {
while (isPaused);
seconds ++;
lblTest.setText(seconds + "");
try {
sleep(200);
} catch (InterruptedException ie) {}
}
}
public Demo () {
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.setResizable(false);
frm.setLayout(null);
frm.setSize(150, 200);
frm.setLocationRelativeTo(null);
lblTest.setBounds(20, 50, 100, 25);
btnPause.setBounds(20, 120, 100, 30);
btnPause.addActionListener(new ActionListener() {
public void actionPerformed (ActionEvent ae) {
if (isPaused) {
btnPause.setText("Pause");
isPaused = false;
} else {
btnPause.setText("Resume");
isPaused = true;
}
}
});
frm.add(lblTest);
frm.add(btnPause);
frm.setVisible(true);
start();
}
public static void main (String args[]) {
new Demo();
}
}
import java.awt.event.*;
import javax.swing.*;
public class Demo extends Thread {
private JFrame frm = new JFrame("Demo");
private JButton btnPause = new JButton("Pause");
private JLabel lblTest = new JLabel("0");
private boolean isPaused = false;
private int seconds = 0;
public void run () {
while (true) {
while (isPaused);
seconds ++;
lblTest.setText(seconds + "");
try {
sleep(200);
} catch (InterruptedException ie) {}
}
}
public Demo () {
frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frm.setResizable(false);
frm.setLayout(null);
frm.setSize(150, 200);
frm.setLocationRelativeTo(null);
lblTest.setBounds(20, 50, 100, 25);
btnPause.setBounds(20, 120, 100, 30);
btnPause.addActionListener(new ActionListener() {
public void actionPerformed (ActionEvent ae) {
if (isPaused) {
btnPause.setText("Pause");
isPaused = false;
} else {
btnPause.setText("Resume");
isPaused = true;
}
}
});
frm.add(lblTest);
frm.add(btnPause);
frm.setVisible(true);
start();
}
public static void main (String args[]) {
new Demo();
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |