从另一个线程更新JLabel
亲爱的大家,我遇到了挥杆相关的问题。由于违反公司政策,我无法共享代码,因此我将尽力解释该问题。
简而言之,我创建了一个扩展包含JLabel的JWindow的类。JLabel的文本是通过计时器对象随机更新的,该计时器对象使用scheduleAtFixedRate方法每50毫秒实例化一个TimerTask。JLabel中的值是通过在一个单独的线程(称为传输线程)中调用一个方法来检索的,该线程负责将数据传输到某个设备。问题是JWindow出现在屏幕上没有任何内容,直到与设备的传输结束为止,然后我将获得传输线程的最后结果。这是什么问题?
-
问题是您访问了事件调度线程(EDT)之外的其他线程中的swing组件。这是禁止的。
每个swing组件的Javadoc都有指向此页面的链接:http :
//download.oracle.com/javase/6/docs/api/javax/swing/package-
summary.html#threading,其中详细介绍了线程策略。
-
如何从另一个线程更新GUI?
2021-02-02 关注 0 浏览124 1答案
-
从另一个线程更新SWT对象
2021-01-29 关注 0 浏览121 1答案
-
如何从另一个线程更新 GUI?
2022-03-22 关注 0 浏览85 1答案
-
javafx,从另一个线程更新ui
2021-01-31 关注 0 浏览124 1答案
-
如何从另一个类中运行的另一个线程更新UI
2021-02-02 关注 0 浏览111 1答案
-
从另一个线程或进程更新Gtk.ProgressBar
2021-01-29 关注 0 浏览78 1答案
-
从android中的另一个线程更新ui
2021-01-29 关注 0 浏览122 1答案
-
如何从Java中的另一个线程更新SWT GUI
2021-01-30 关注 0 浏览68 1答案
-
从另一个运行FTP下载的线程更新PyQt进度
2021-01-29 关注 0 浏览64 1答案
-
在另一个JLabel之上的JLabel
2021-01-30 关注 0 浏览89 1答案