- 浏览: 634563 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (314)
- 生活 (2)
- c# (37)
- 技术 (3)
- 400电话 (0)
- 400常见问题 (0)
- 400资费 (0)
- html (7)
- css (0)
- 数据库 (7)
- javascript (16)
- php (33)
- asp.net mvc2 (10)
- mysql (9)
- C# 3.0 LinQ (10)
- vs2005或vs2008 (4)
- flash and as3 (7)
- fms (1)
- dedeCMS (11)
- java (33)
- j2me (1)
- swing (1)
- c++ (1)
- jquery easyui (3)
- jquery (5)
- android (29)
- MongoDB (9)
- VtigerCRM (1)
- test (0)
- linux (30)
- nutch (2)
- SqlServer数据库 (2)
- 数据检索 (2)
- java抓取 (11)
- 乐天 (1)
- 淘宝 (1)
- Silverlight4.0 (6)
- sphinx实时索引 (5)
- ecshop (9)
- codeigniter(CI) (3)
- axure6 (1)
- 京东店铺装修教程 (2)
- xpath (1)
- joomla (2)
- bpm (1)
- Bootstrap (2)
- knockout (4)
- ecstore (4)
- css3 (1)
- 微信 (2)
- dede (0)
- soa_edi (1)
- odoo (0)
- web (1)
最新评论
-
骑着蜗牛超F1:
在ie6下报了个stack overflow at line ...
兼容ie6和ie7 的16进制码流在html中显示为图片代码(base64) -
冰之海洋:
好像少了一句代码吧? FloatingFunc.show(th ...
android 一直在最前面的浮动窗口效果 -
yanzhoupuzhang:
连接有问题!
iis7.0官方下载 IIS 7.0(微软Web服务器组件IIS 7.0) 官方(windows 2003,XP,2000) -
whatable:
唉,楼主你都没有搞清楚重量级和轻量级。。。。既然引用了SWT, ...
java swing 内置浏览器打开网页显示flash图表-swt Browser应用 -
yy_owen:
我晕啊,你链接的什么内容额,我要的iis,你链接个视频什么意思 ...
iis7.0官方下载 IIS 7.0(微软Web服务器组件IIS 7.0) 官方(windows 2003,XP,2000)
上一篇文章【java swing 内置浏览器打开网页显示flash图表-swt Browser应用 】讲解的如何在java中打开网站,但是,在实际开发中右遇到了一个问题就是如何用程序改变已经打开的网页地址,下面把自己解决问题的方法讲解一下。
首先我在程序中直接调用 Browser对象的setUrl方法,代码如下:
browser.setUrl("http://www.y400800.cn ");
程序会抛出如下异常:
Exception occurred during event dispatching:
org.eclipse.swt.SWTException: Invalid thread access
at org.eclipse.swt.SWT.error(SWT.java:3884)
at org.eclipse.swt.SWT.error(SWT.java:3799)
at org.eclipse.swt.SWT.error(SWT.java:3770)
at org.eclipse.swt.widgets.Widget.error(Widget.java:463)
at org.eclipse.swt.widgets.Widget.checkWidget(Widget.java:355)
at org.eclipse.swt.browser.Browser.checkWidget(Browser.java:164)
at org.eclipse.swt.browser.Browser.setUrl(Browser.java:973)
at zhinengkaiguanjiankong.comm.SWTPane.StartThread(SWTPane.java:42)
at zhinengkaiguanjiankong.RealTimeSwitchDetailChart.jbtn_searchActionPerformed(RealTimeSwitchDetailChart.java:292)
at zhinengkaiguanjiankong.RealTimeSwitchDetailChart.access$200(RealTimeSwitchDetailChart.java:32)
at zhinengkaiguanjiankong.RealTimeSwitchDetailChart$2.actionPerformed(RealTimeSwitchDetailChart.java:186)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6267)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6032)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4630)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4460)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:178)
at java.awt.Dialog$1.run(Dialog.java:1046)
at java.awt.Dialog$3.run(Dialog.java:1098)
at java.security.AccessController.doPrivileged(Native Method)
at java.awt.Dialog.show(Dialog.java:1096)
at java.awt.Component.show(Component.java:1563)
at java.awt.Component.setVisible(Component.java:1515)
at java.awt.Window.setVisible(Window.java:842)
at java.awt.Dialog.setVisible(Dialog.java:986)
at zhinengkaiguanjiankong.RealTimeSwitchDetailChart$4.run(RealTimeSwitchDetailChart.java:315)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
该解决方案被否定,以失败告终。
然后又在网上baidu,google了一下,发现问题如下:
在非SWT线程的线程里想要修改SWT界面,都要通过上面类似的办法来做,不然就会报错的,解决方法如下:
Display.getDefault().syncExec(new Runnable() {
public void run() {
browser.setUrl("http://www.my400800.cn
");
}
});
最主要是红色字体的地方代码,大家注意一下。
发表评论
-
Java 线程中的Join、wait、notify,sleep
2016-06-22 17:28 4541.wait和notify这两个方法都是Object中的方法 ... -
Java多线程sleep(),join(),interrupt(),wait(),notify()
2016-06-22 17:25 510浅析 Java Thread.join() ... -
Java和C#运行命令行并获取返回值 运行bat文件
2015-08-04 10:45 1332Java运行命令行的例子 import java.io.B ... -
HttpClient的超时用法小记
2012-05-06 08:23 973HttpClient在使用中有两个超时时间,是一直接触 ... -
JDK1.5中的线程池(java.util.concurrent.ThreadPoolExecutor)使用简介
2012-05-05 21:29 792在多线程大师Doug Lea的 ... -
XPath 语法 org.dom4j.Document
2012-02-07 13:12 1333XPath 使用路径表达式 ... -
Nutch命令大全
2011-12-28 15:12 1428Nutch采用了一种命令的方式进行工作,其命令可以是对局域网方 ... -
Nutch1.2搜索引擎使用详解
2011-12-27 17:12 1690Nutch作为一款刚刚诞生 ... -
ECLIPSE java.lang.OutOfMemoryError: PermGen space 错误
2011-12-21 15:03 1120ECLIPSE 最近一段时间经常报错,看了日志,有如下错误信息 ... -
nutch环境配置在windows系统上(借助Cygwin)
2011-11-16 11:09 1800nutch环境配置在windows系统上必须要安装【Cygwi ... -
Heritrix 和 Nutch 比较与分析(java开源网络爬虫)
2011-11-15 11:01 7460Heritrix项目介绍 Heritrix工程 ... -
heritrix 下载、安装、配置、以及简单开发
2011-11-04 11:36 1394一、下载: 到www.sourcef ... -
java 如何判断Socket已断开
2011-09-14 13:34 1735最近在开发中遇到一个问题,就是如何判断远端服务器是否已经断开连 ... -
java 程序内存溢出问题查找
2011-04-10 18:00 984这段是时间用java swing做了一个小程序,但是运行一点时 ... -
jtable 隐藏表头标题行
2011-04-08 10:59 3279今天需要把JTable的表头也就是标题行给隐藏掉,在晚上找了一 ... -
java FrameView 启动最大化
2011-03-30 08:49 1535FrameViewzView = new ... -
Swing窗口Linux下不支持最大化问题
2011-03-28 10:15 1003由于最近一直在Linux下工作,今天遇到了Swing窗口不能最 ... -
java 抓取网页内容,可设定代理(HttpURLConnection)
2011-03-11 09:41 1464/* * To change this template, ... -
swing下 改变窗口样式为windows风格(swing控件样式不美观解决方案)
2011-03-02 15:52 2642在windows环境下可以用下面两种方法使窗口显示window ... -
java swing 内置浏览器打开网页显示flash图表-swt Browser应用
2011-02-25 16:45 3870今天在网上找了好久如何用在java swing打开网页,从而实 ...
相关推荐
SWT Browser(内嵌浏览器)所需SWTResourceManager Jar包
用SWT 组建实现一个简单的浏览器实例。具有搜索功能,
6. 监听和交互:SWT的`Browser`类提供了事件监听器,如`LocationChangedListener`和`ProgressListener`,以便于监控加载进度和改变页面地址。此外,还可以通过JavaScript接口与页面进行双向通信。 7. 错误处理:...
本文将详细探讨如何利用SWT和Applet来打开和操作本地的Office文件,包括Word、Excel和PowerPoint等。 首先,SWT是Eclipse基金会开发的一种Java GUI库,它提供了一种更接近于本机应用程序的用户体验,因为它的控件...
代码如下: 代码如下:package swt_jface.demo6; import java.io.File; import java.util.Date; import org.eclipse.jface.resource.ImageRegistry; import org.eclipse.swt.SWT; import org.eclipse.swt.graphics....
例如,当用户在地址栏输入并按下回车键时,可以添加一个`KeyListener`监听键盘事件,然后根据输入的URL启动加载新页面的过程。同时,为了确保安全,开发者还需要考虑对URL的验证和异常处理。 最后,项目提供的`swt....
4. **配置SWT Browser**:在Eclipse中创建一个新的SWT项目,导入Browser组件,并设置其加载本地的FTL文件。 5. **Freemarker与Java的结合**:使用Freemarker API,将数据模型传递给模板并生成HTML字符串。 6. **...
"Browser"标签则明确指出了SWT的核心功能之一——浏览器功能,这是通过`org.eclipse.swt.browser.Browser`类提供的。这个类提供了加载URL、执行JavaScript、与网页内容交互等方法,使得开发者可以在Java应用程序中...
导入Eclipse方法: 1.解压zip,找出2个jar文件,放入一个你想放的文件夹中 2.右键Eclipse中的工程,选择Build Path->Configure Build Path 3.选择Add External Jar,选择解压得到的2个jar即可
- **打开**:用户可以打开新的URL,通过`setUrl`方法将指定的URL加载到浏览器中。 - **前进/后退**:使用`goForward`和`goBack`方法,开发者可以实现浏览器的历史导航功能。 - **查看历史**:SWT的`Browser`类并不...
SWT Designer 最新版本第3部分
64位版本的SWT是为了在64位Java运行时环境中运行而编译的,这意味着它可以充分利用64位系统的优势,如更大的内存地址空间和更快的计算能力。SWT库通常以jar文件的形式分发,就像压缩包中的“swt-64.jar”一样。...
org.eclipse.swt.browser.Browser.class org.eclipse.swt.browser.BrowserFactory.class org.eclipse.swt.browser.BrowserFunction.class org.eclipse.swt.browser.CloseWindowListener.class org.eclipse.swt....
git 地址 https://github.com/maketechnology/chromium.swt
4. **对话框(Dialogs)**:SWT提供了一些内置的对话框,如`MessageDialog`用于显示消息,`FileDialog`用于打开或保存文件,`ColorDialog`和`FontDialog`则用于选择颜色和字体。这些对话框可以帮助增强应用程序的...
### SWT配置详解 #### 一、SWT简介与配置的重要性 SWT(Standard Widget Toolkit)是一种用于构建基于Java的应用程序的图形用户界面工具包。它提供了丰富的控件集,并能够生成本地外观和感觉的界面,这使得应用在...
使Excel嵌入到SWT窗口中 知识点一:Eclipse版本和jdk版本的选择 在本例中,我们使用的是Eclipse 3.3.1版本和jdk 5.0版本。Eclipse是一个开源的集成开发环境(IDE),它支持多种编程语言,包括Java、C++、Python等...
SWT(Standard Widget Toolkit)是Java中用于创建图形用户界面(GUI)的一种开源库,它提供了丰富的组件集合,使得开发者可以构建出功能强大且美观的桌面应用程序。与Java的另一图形库AWT和Swing相比,SWT更接近底层...
SWT(Standard Widget Toolkit)是Eclipse项目的一个重要组成部分,它提供了一套用于构建图形用户界面(GUI)的API,与Java Swing不同,SWT基于操作系统原生的UI组件,因此能够实现更好的性能和与操作系统的集成。...