zhaopeinow 2011-10-14 17:55
浏览 262
已采纳

swt 父窗体中打开子窗体问题

SWT 刚开始写,向高手取经

在父窗体中的子窗体代码:
[code="java"]ApiTestPanel api = new ApiTestPanel(url);
api.open();[/code]

子窗体中打开方式(父窗体也是这么打开的)
[code="java"]public void open() {
_shell.open();
while (!_shell.isDisposed()) {
if (!_display.readAndDispatch())
_display.sleep();
}
_display.dispose();
}[/code]
异常如下:
Exception in thread "main" org.eclipse.swt.SWTException: Invalid thread access
at org.eclipse.swt.SWT.error(SWT.java:4083)
at org.eclipse.swt.SWT.error(SWT.java:3998)
at org.eclipse.swt.SWT.error(SWT.java:3969)
at org.eclipse.swt.widgets.Display.checkDisplay(Display.java:766)
at org.eclipse.swt.widgets.Display.create(Display.java:828)
at org.eclipse.swt.graphics.Device.(Device.java:137)
at org.eclipse.swt.widgets.Display.(Display.java:480)
at org.eclipse.swt.widgets.Display.(Display.java:471)
at com.huawei.idac.tools.ui.ApiTestPanel.(ApiTestPanel.java:45)
at com.huawei.idac.tools.ui.ManagePanel$3.widgetSelected(ManagePanel.java:223)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
at com.huawei.idac.tools.ui.ManagePanel.open(ManagePanel.java:435)
at com.huawei.idac.tools.Main.main(Main.java:21)

另外还想问一个小问题,SWT中 复选框怎么弄啊?
多谢各位大虾啊!!!!!!

  • 写回答

3条回答 默认 最新

  • hongmei_xp 2011-10-15 12:53
    关注

    SWT checkbox example:
    http://www.java2s.com/Tutorial/Java/0280__SWT/CheckBoxButton.htm

    使用Button,但是Style设置为Check

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • hongmei_xp 2011-10-14 23:14
    关注

    使用Display.asyncExec(Runnnable )打开。如果我没有记错的话。。

    复选框不就是CheckBox嘛?

    评论
  • hongmei_xp 2011-10-17 10:02
    关注

    Ok。 一般来说,在父窗体中打开子窗体,我一般都是让子窗体实现一个Dialog,然后打开这个Dialog。

    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 AD20 PCB板步线 这个要怎么步啊
  • ¥50 关于《奇迹世界》1.5版本,数据修改
  • ¥15 请问这个问题如何解决(关键词-File)
  • ¥50 visual studio 2022和EasyX图形化界面
  • ¥15 找一下报错原因,纠正一下
  • ¥50 Cox回归模型Nomogram图制作报错
  • ¥20 SQL如何查询多级用户的数据
  • ¥15 给车牌识别代码加一个识别轮廓长宽比的代码
  • ¥30 商品价格预测的transformer模型优化
  • ¥15 SQL中的图片,无法传回php到前端。没有任何报错。