event-dispatch-thread

    3热度

    1回答

    我有一个使用JProgressBar的GUI。 GUI具有JBUTTONs是调用下面的代码: public void updateProgressBar(int x) { System.out.println(javax.swing.SwingUtilities.isEventDispatchThread()); healthBar.setValue(x); } ,但我也

    0热度

    1回答

    我正在构建一个java分析工具,该机制要求将应用程序的所有线程实例替换为子类“ProfilingThread”,它将覆盖某些线程的行为以实现分析功能。 鉴于Java应用程序的源代码,我可以简单地将所有“线程”类重新分配到“ProfilingThread”类。但是,AWT事件调度程序的线程没有被用户代码实例化,而是在AWT函数被调用时自动创建。 我能做些什么来用ProfilingThread实例替换

    0热度

    2回答

    我正在生成各种测试结果的Windows应用程序。 UI提供了一个按钮Results,它具有各种方法作为事件处理程序。这些方法由API模块提供。该模块从仓库提取数据,然后将其显示给用户。 API调用是异步的。 但是一旦按钮被点击,UI就会被阻塞。 经过一番阅读后,我才知道Dispatcher有助于在后台运行进程。分派器只能由UI线程调用/调用。 如何实现调度程序以防止UI被阻塞? C#中的功能看起来

    0热度

    1回答

    我正在尝试制作JFrame并查看计数器的进度。 int i = 1; while (i < 100000){ textField.setText(String.valueOf(i)); System.out.println(i); i++; } 当我开始它我可以看到在控制台上的进步,但textField的价值不会改变。循环结束时它变为100000。 如何让它显

    1热度

    1回答

    我正在制作一个滚动的2D地图/平铺游戏。每个瓦片(以瓦片形式存储[21] [11] - 每个地图总共231个瓦片)可以包含多达21个值(存储为int [3] [7])。全屏时,我一次看到大约8张地图。 平均而言,每张地图大约需要0.03秒来绘制(在System.nanoTime中找到)。问题是,只要屏幕上出现超过1张地图,Swing事件轮询显着减慢。 有没有解决这个问题的方法?我无法一次画出地图将

    2热度

    1回答

    当我尝试将可运行队列传递给SwingUtilities.invokeLater时,我收到了一个间歇性抛出的异常,大约每执行一次应用程序中的一次。它似乎只发生在应用程序启动时,也许在事件调度线程正确设置之前?我不太确定,但如果应用程序正常运行,那么在此之后我就没有任何问题了。这里是例外: Exception in thread "Thread-3" java.lang.NullPointerExce

    -2热度

    2回答

    我正在使用Java图形界面(Swing,AWT)。我的应用程序中的数据输入应该通过JFrame完成。事实上,我有10个实体需要10 JFrame。我使用了for循环,但JFrame似乎没有等到数据输入。 我用Thread.sleep()但徒劳无功。任何帮助? 下面是我的一些代码: for (int i=0; i < VMnumber; i++) // VMnumber : number of vi

    0热度

    1回答

    我正在使用Java编写Sugarscape模拟程序,并且需要一个可用的GUI。 Sugarscape是一个空间景观,由瓷砖(糖)和代理商移动和消费糖。为了简单起见,我只有一个代理人,没有糖 - 我只想看到代理人移动。 在过去的2个星期里,我读了painting in java,concurrency in java,swing的并发性,我已经阅读了肮脏的富客户端和无数StackOverflow线程

    0热度

    2回答

    我有一个java swing gui程序,当我点击一个切换按钮时,一个计时器开始,但我想能够点击相同的按钮,计时器停止,现在它不会让我再次点击它。 这是我的定时器类 public void runningClock(){ isPaused = false; while(!isPaused){ incrementTime(); System.out.p

    0热度

    1回答

    我是Java/Swing的新手。我有这样的代码: private void printText(String msg) { jStatus.setText(msg); jStatus.setCaretPosition(jStatus.getText().length()-1); } jStatus是JTextPane。我想在调试中使用它。 但是,msg不会显示在jS