java - 我有一个随机颜色程序,我需要它快速切换颜色

标签 java

我的“动脉瘤模式”按钮有一个 ActionListener,但当我按下它时,它什么也不做...

这是 ActionListener 的代码:

private class AneurysmMode implements ActionListener {


           AneurysmMode () {}

            @Override
            public void actionPerformed(ActionEvent e) {
                while (true) {

                    try {
                        Thread.sleep(100);
                        frame.getContentPane().setBackground(colours[(int)(Math.random()*(9)+0)]);  
                    }
                catch (InterruptedException ex) {

                }   
            }
        }           
    }

最佳答案

您正在 hibernate 事件调度线程,这是一个坏主意。您将向事件队列添加新颜色,但永远不会对其进行操作,因为按钮操作监听器不会返回。如果您将 while 循环从按钮处理程序中取出,那么每次按下按钮时它都会发生变化。

更好的选择是更改计时器操作事件中的颜色并通过按下按钮启动计时器。

关于java - 我有一个随机颜色程序,我需要它快速切换颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40891528/

相关文章:

java - Netty 4 OrderedMemoryAwareThreadPoolExecutor

java - 解码 xml 时忽略前缀(命名空间)

java - android-bitmap 低质量问题

java - 使用资源包的单元测试静态方法

java - 我如何获取存储到 android 中的文件中的所有 logcat 条目

java - 如何在 LWUIT 中创建多选列表或复选框组?

java - 如果文件不断更改,我是否必须创建 fileinputstream 的新实例?

java - 如何在android中将数据库中的数据显示为复选框列表

java - 如何获取模式 : regex not followed by another regex 的不匹配项

java - 无法在 hibernate 中实现 Between 语句