`
beckrabbit
  • 浏览: 129398 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

多线程修改SWT界面元素

阅读更多
今天用SWT做一个小测试工具是发现一个问题,在创建SWT界面的线程之外的线程中修改界面元素 会抛出异常
org.eclipse.swt.SWTException: Invalid thread access
这是由于在SWT程序中,SWT会自动创建一个用户界面线程,非用户界面线程不能直接操作用户界面线程,因此要使用SWT的事件分发线程,如
display.syncExec(new Runnable() {
public void run(){
label.setText("改变");
}
}
);
分享到:
评论

相关推荐

    eclipse插件开发学习笔记

    - VisualEditor是一款可视化的编辑工具,可以帮助开发者快速创建和编辑SWT界面。通过Eclipse的扩展管理器可以方便地安装此工具。 **6.2 使用VisualEditor** - VisualEditor提供了拖放式的控件放置功能,开发者可以...

    Eclipse插件开发

    - 类库结构、资源管理、多线程访问GUI资源等是理解SWT的关键点。 - **3.2 SWT疑难点解析** - Button、Text、Table等控件的具体使用方法及其特性。 - 如何在SWT中显示AWT/Swing对象,解决跨平台UI兼容性问题。 - *...

    JAVA代码的五子棋小游戏

    7. **多线程**:如果游戏有AI对手,那么可能会涉及到多线程,一个线程负责用户的操作,另一个线程负责AI的思考,以实现同步的游戏体验。 8. **版本控制**:为了方便代码的管理和协作,可以使用Git进行版本控制,...

    简单网页浏览器

    5. **多线程处理**:为了提高用户体验,浏览器通常会在后台线程加载网页,防止阻塞用户界面。JAVA的并发API,如ExecutorService和Thread类,可以帮助实现这一功能。 6. **安全与隐私**:JAVA提供了一些内置机制来...

    Bomberman_java_televisionngw_

    4. **多线程编程**:在双人对战游戏中,两个玩家的行动通常是并行进行的,因此理解Java的多线程是非常关键的。可能使用了`Thread`类或者`Runnable`接口来实现并发操作。 5. **网络编程**:如果游戏支持在线对战,...

    JAVA组件复习资料.pdf

    JVM本身并不支持图形用户界面(GUI)和多线程的直接运行,这些需要依赖Java的API来实现。 14. JSP(Java Server Pages)是Sun Microsystems开发的一种服务器端动态网页技术,允许在HTML页面中嵌入Java代码,无需编译...

    Java超级玛丽

    10. **优化性能**:游戏需要保持流畅的帧率,因此可能需要对代码进行优化,减少不必要的计算,或者利用多线程技术来提高性能。 通过分析并实践这个“Java超级玛丽”项目,开发者不仅可以学习到Java编程的基础,还能...

    yari-开源

    6. **导航功能**:Yari提供GUI导航,使开发者能够轻松浏览和理解应用程序的各个部分,快速定位到特定的界面元素或代码段,提高开发效率。 7. **开源软件**:开源软件是指源代码公开、允许自由使用、修改和分发的...

    java面试中重点题目

    - **组件**:如JButton、JTextField等,是用户界面上的基本元素。 - **AWT、Swing和SWT的区别**: - **AWT**(Abstract Window Toolkit):Java最早的GUI库,依赖于操作系统提供的图形界面支持。 - **Swing**:...

    Eclipse权威开发指南2.pdf

    5.4.12 其他CVS用户界面元素.... 150 5.5 特殊情况及其处理...... 151 5.5.1 对项目资源进行重命名、移动和删除..... 151 5.5.2 取消修改:使用替换和比较操作..... 152 5.5.3 通过建立分支来进行版本维护和新...

    SpaceGame-开源

    在游戏设计方面,开发者通过使用Java的图形库(如JavaFX或SWT)创建游戏界面和交互元素。这些库提供了丰富的API,可以方便地创建2D图形,实现游戏中的角色移动、碰撞检测以及背景动画等效果。例如,控制角色左右移动...

    Eclipse权威开发指南3.pdf

    5.4.12 其他CVS用户界面元素.... 150 5.5 特殊情况及其处理...... 151 5.5.1 对项目资源进行重命名、移动和删除..... 151 5.5.2 取消修改:使用替换和比较操作..... 152 5.5.3 通过建立分支来进行版本...

    Eclipse权威开发指南1.pdf

    5.4.12 其他CVS用户界面元素.... 150 5.5 特殊情况及其处理...... 151 5.5.1 对项目资源进行重命名、移动和删除..... 151 5.5.2 取消修改:使用替换和比较操作..... 152 5.5.3 通过建立分支来进行版本...

    Dunes of Terror:用Java编写的简单RTT,如果你想进一步开发,请告诉我-开源

    同时,Java的多线程特性使得游戏运行更加流畅,能够处理复杂的逻辑和实时交互。 在压缩包中,我们能看到以下几个关键文件: 1. **Dunes_of_Terror.jar**:这是Java应用程序的可执行文件,包含了游戏的所有资源和...

Global site tag (gtag.js) - Google Analytics