zoukankan      html  css  js  c++  java
  • 线程小例子--控制输出

    线程小例子--控制输出

    功能:一个小窗体,两个按钮,点击开始按钮,控制台开始打印,点击停止按钮,控制台停止打印。

    import java.awt.Container;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
    
    import javax.swing.JButton;
    import javax.swing.JFrame;
    
    public class ThreadDemo extends JFrame{
        String info="你很棒";
        static Thread tstart;
        Boolean iscontinue=true;  //控制开始还是结束
        public  ThreadDemo(){
            super();
            Container c=getContentPane();
            setBounds(300,200,250,100);
            c.setLayout(new FlowLayout());
            JButton jb1=new JButton("开始");
            JButton jb2=new JButton("停止");
            c.add(jb1);
            c.add(jb2);
            jb1.addActionListener(new ActionListener() {  //开始按钮的监听事件
                
                @Override
                public void actionPerformed(ActionEvent e) {
                    // TODO Auto-generated method stub
                    tstart=new Thread(new Runnable() {
                        
                        @Override
                        public void run() {
                            // TODO Auto-generated method stub
                            iscontinue=true;
                            while(true){
                                if(iscontinue==false){
                                    break;
                                }
                                try {
                                    Thread.sleep(1000);
                                } catch (InterruptedException e) {
                                    // TODO Auto-generated catch block
                                    e.printStackTrace();
                                }
                                System.out.println(info);
                            }
                        }
                    });
                    tstart.start();
                }
            });
            jb2.addActionListener(new ActionListener() {  //结束按钮的监听事件
                
                @Override
                public void actionPerformed(ActionEvent e) {
                    // TODO Auto-generated method stub
                    iscontinue=false;
                    tstart=null;
                }
            });
            setVisible(true);
        }
        public static void main(String[] args){
            new ThreadDemo();
        }
    }

    思路:在开始按钮中新建线程,将控制变量iscontinue置为true,在结束按钮中将控制变量iscontinue置为false,同时将线程置为null

  • 相关阅读:
    C#按键打开文件选择对话框,并把选择好的路径保存/显示到textBox
    C#按钮打开浏览器,网址
    阅读笔记05
    进度条14
    冲刺4--10
    冲刺3
    冲刺2
    课堂训练书本
    进度条13
    课堂水王2
  • 原文地址:https://www.cnblogs.com/xtuxiongda/p/8610584.html
Copyright © 2011-2022 走看看