如何让SWT的Dialog打开后隐藏?

limengchen 2009-08-13 05:43:13
想在主线程创建了一个Dialog,open并让其隐藏。在其它线程里通过Display.asyncExec(...)让其显示。但在主线程里open后怎么隐藏Dialog呢?
...全文
199 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
limengchen 2009-09-02
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 yekai012 的回复:]
dialog.create();
dialog.getShell().setVisible(false);
dialog.open();

[/Quote]

我是这么写的啊,还是不行,一open窗口就显示了
Acharz 2009-08-31
  • 打赏
  • 举报
回复
你可以在主线程里设置好Dialog的参数,在其他线程里调用Dialog的Open()。
bayougeng 2009-08-31
  • 打赏
  • 举报
回复
没搞过swt,弱弱的问一下。
window被open的时候,没有相应的event吗?写在这个event的action里不行么?
limengchen 2009-08-31
  • 打赏
  • 举报
回复
怎么没人回复呢...
yekai012 2009-08-31
  • 打赏
  • 举报
回复
dialog.create();
dialog.getShell().setVisible(false);
dialog.open();
yekai012 2009-08-31
  • 打赏
  • 举报
回复
在调open前,先调Create();
limengchen 2009-08-28
  • 打赏
  • 举报
回复
我用的SWT,没有processEvent,试了
Event closeEvent = new Event();
closeEvent.type = SWT.CLOSE;
this.getShell().getDisplay().post(closeEvent);
但是没反应,根本不会进public boolean close()函数
奋斗并快乐着 2009-08-26
  • 打赏
  • 举报
回复
用这个:
processEvent(new WindowEvent(this, WindowEvent.WINDOW_CLOSING));
limengchen 2009-08-25
  • 打赏
  • 举报
回复
应该在哪调啊?我试了configureShell和createDialogArea都不行。
limengchen 2009-08-14
  • 打赏
  • 举报
回复
可是在哪调setVisible呢?如果在open之前,那么open会把它重新设为可见。如果是在open之后,那么只有等把对话框关了才会执行这一句。
mgb690_2008 2009-08-14
  • 打赏
  • 举报
回复
dialog.setVisible(false);可是实现的,但要注意open()方法和这句话的位置,LZ试试吧!
islandrabbit 2009-08-14
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 limengchen 的回复:]
可是在哪调setVisible呢?如果在open之前,那么open会把它重新设为可见。如果是在open之后,那么只有等把对话框关了才会执行这一句。
[/Quote]

在open之后,顺便说一下我用的是jface的TitleAreaDialog.
islandrabbit 2009-08-13
  • 打赏
  • 举报
回复
楼主可试试:dialog.getShell().setVisible(false);

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧