zoukankan      html  css  js  c++  java
  • Runnable接口

    Runnable接口可以更好的控制管理多个线程。

    可以理解为多条公路(线程)通过一个收费站(Runnable接口),达到车辆(run)有序通过的目的。具体参考《线程的同步(协调)synchronized》一节

    以下案例实现图片的移动,思路:通过label的x位置变化,实现图片移动

    public class Demo extends JFrame {
        private JLabel label = new JLabel();
        private static Thread t;
        private int count = 0;
        private Container c = getContentPane();
    
        public Demo() {
            setBounds(300, 200, 250, 100);//窗体位置、大小
            setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
            c.setLayout(null);
            URL url = Demo.class.getResource("1.gif");//图片地址
            Icon icon = new ImageIcon(url);//实例化icon
            label.setIcon(icon);//将图放入标签中
            label.setHorizontalAlignment(SwingConstants.LEFT);//label内部左布局,即图片在label左侧
            label.setBounds(0, 10, 50, 50);
            //label.setBorder(BorderFactory.createLineBorder(Color.RED));//边框颜色
            c.add(label);
    
            t = new Thread(new Roll());//调用Roll线程
            t.start();//启动
    
            setVisible(true);
        }
    
        class Roll implements Runnable {//定义Roll内部类,实现Runnable接口
            public void run() {//执行的内容
                while (count <= 200) {
                    label.setBounds(count, 10, 50, 50);//label位置
                    try {
                        Thread.sleep(1000);//休眠1s
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                    count += 4;//步进距离4
                    if (count >= 200) {//如果到右端,重新从左端开始
                        count = 0;
                    }
                }
            }
        }
    
        public static void main(String[] args) {
            new Demo();//实例化窗体
        }
    }
  • 相关阅读:
    感觉每天打开自己的博客园, 想编程的心情就多了起来~~~
    算法图解相关代码整理
    github cli
    What's WebFlux ? And how to use it ? 一股有咖喱味的WebFlux简介
    style
    gradle 1
    gradle打包可运行jar
    外面下着雨
    天晴朗 看花儿多多开放
    Full Stack Reactive with React and Spring WebFlux
  • 原文地址:https://www.cnblogs.com/xixixing/p/9568410.html
Copyright © 2011-2022 走看看