- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何关闭 SelectionListener
中的Dialog
?目前我的 SelectionListener
看起来像这样:
public void widgetSelected(SelectionEvent e) {
ICommandService commandService = (ICommandService) PlatformUI.getWorkbench()
.getService(ICommandService.class);
IHandlerService handlerService = (IHandlerService) PlatformUI.getWorkbench()
.getService(IHandlerService.class);
Command command = commandService
.getCommand("com.mainfirst.backoffice.gui.accounting.command.createBookingReversal");
Map<String, String> params = new HashMap<String, String>();
params.put("com.mainfirst.backoffice.gui.accounting.reversalCodeParameter",
String.valueOf(model.getVal().getCode()));
ParameterizedCommand paraCommand = ParameterizedCommand.generateCommand(command, params);
try {
handlerService.executeCommand(paraCommand, null);
} catch (Exception ex) {
Status status = new Status(IStatus.ERROR, AccountingActivator.PLUGIN_ID,
"Error opening reversal wizard", ex);
StatusManager.getManager().handle(status, StatusManager.SHOW);
throw new RuntimeException(ex);
}
close();
}
如您所见,我确实调用了 close();
,但 Dialog
最终仍然保持打开状态。将调用移至 finally
block 内也无济于事。我的命令在 Dialog
前面打开一个新的 Wizard
。我是否必须在向导
打开之前关闭对话框
?
最佳答案
如果您希望对话框在其运行的命令完成之前关闭,您将需要异步运行该命令。为此,请使用 Display.asyncExec 。使用类似的东西:
public void widgetSelected(SelectionEvent e) {
Display.getDefault().asyncExec(() ->
{
... code to call command
});
close();
}
(假设是 Java 8,对于 Java 7 或更早版本使用 Runnable
)。
关于java - SelectionListener 中的 JFace 关闭对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46112992/
我在 oracle adf (jdeveloper) 中有一个融合 Web 应用程序。 其中我有一个带有内联编辑的表格。如果用户离开当前行,我想在其中允许自动提交。因此,如果用户导航到另一行,则必须自
我正在尝试在 RadioButton 上实现一个事件: radio_Email.addSelectionListener( new org.eclipse.swt.events.Selecti
我找不到这个接口(interface)或其他相关信息: ok.addSelectionListener(new SelectionAdapter() { public void w
如何关闭 SelectionListener 中的Dialog?目前我的 SelectionListener 看起来像这样: public void widgetSelected(SelectionE
我有一个向 SWT shell 添加四个复选框按钮的代码,我已向复选框按钮添加了选择监听器,我想在单击 SWT Shell 的“确定”、“取消”和“关闭”按钮时将其删除,我该如何处理此类按钮事件,这是
我有一个带有 GUI 线程和 SQL 线程的应用程序。 GUI 中显示一棵树,单击树中的某个项目将启动一个单独的线程,该线程将启动 SQL 查询。查询完成后,树就会更新。 问题是,如果用户在获取线程完
我已经实现了一个 View ,它将自身注册为 XText 编辑器和相关大纲中更改的监听器。为此,我添加了这一行 PlatformUI.getWorkbench().getActiveWorkbench
嗨,强大的程序员们,作为 n00b 初学者,我再次请求你们的帮助...... 问题如下,我有一个子窗口,包含一些标签、按钮和两个下拉菜单。我想在一个名为“name”的组合框上有一个 Selection
我有一个名为“radio”的顶级菜单,其中包含两个 radio MenuItem。我为两者都添加了 SelectionListener。 MenuItem radio = new MenuIt
我正在我的 RAP 应用程序 (1.5M7) 中实现广告部分。为了展示广告,我使用了 SWT Browser 。如何检测用户对浏览器(广告)的点击,以便能够将其转发到链接页面? 最佳答案 如果您从外部
PostSelectionListener 已添加到当前工作台窗口: getWorkbenchWindow().getSelectionService().addPostSelectionListen
我正在努力检测绑定(bind)到 bean 的 CheckBoxGroup 中项目的取消选择。这是一个简化的示例: 我有一个类(class)人: package com.vaadin.test; im
为什么退出按钮不通知我选择已更改? (未选中) 我对 SelectionListener 进行了一些验证,按转义键跳过了我的验证。 这绝对不是正常的行为。当从表中按退出按钮以按隐藏按钮捕获该事件时,我
我无法理解 SWT SelectionListener 中两种方法之间的区别。 javadoc如下: void org.eclipse.swt.events.SelectionListener.wid
我是一名优秀的程序员,十分优秀!