我的任务是必要的,不应取消,我如何要求ProgressMonitor不显示“取消”按钮,所以完成后它将自动关闭面板。
坦率
我在想,也许我可以要求它返回其中的组件并删除按钮
使用Swing教程中的ProgressMonitorDemo(由BalusC链接)进行了以下更改:
public void propertyChange(PropertyChangeEvent evt) {
if ("progress" == evt.getPropertyName() ) {
int progress = (Integer) evt.getNewValue();
progressMonitor.setProgress(progress);
// Added this
AccessibleContext ac = progressMonitor.getAccessibleContext();
JDialog dialog = (JDialog)ac.getAccessibleParent();
java.util.List<JButton> components =
SwingUtils.getDescendantsOfType(JButton.class, dialog, true);
JButton button = components.get(0);
button.setVisible(false);
// end of change
String message =
String.format("Completed %d%%.\n", progress);
progressMonitor.setNote(message);
taskOutput.append(message);
if (progressMonitor.isCanceled() || task.isDone()) {
Toolkit.getDefaultToolkit().beep();
if (progressMonitor.isCanceled()) {
task.cancel(true);
taskOutput.append("Task canceled.\n");
} else {
taskOutput.append("Task completed.\n");
}
startButton.setEnabled(true);
}
}
}
您还需要下载Swing Utils类。
该代码仅应执行一次,否则在对话框关闭时会得到一个NPE。我会让你整理一下:)。
问题内容: 在使用jQuery提交AJAX表单后,我想取消选中单选按钮。我有以下功能: 借助此功能,我可以清除文本框中的值,但不能清除单选按钮的值。 顺便说一句,我也尝试过,但是那没用。 问题答案: 要么(普通js) 或(jQuery)
如果您在Firefox WebExtension中发出获取请求,它将自动设置“origin”标题。例如,当我在WebExtensions中运行此代码时。。。 ... 结果请求包含标题:“origin:moz”-extension://539a0d5b-60d9-4726-b3de-27d6979edc26" 在Chromium中运行相同的代码不会设置标头。(更新:这并不总是正确的,因为Chrome
省略 不推荐省略 0 值单位,原因如下: CSS 规范中可以省略单位只有 [<length-percentage>](https://drafts.csswg.org/css-values-3/#typedef-length-percentage),其他比如角度单位 deg 在 Chrome 中可以省略, 这是浏览器的 Bug。 注:可以省略的单位包括:%|em|ex|ch|rem|vw|vh|v
我创建了类型。当它打开它时,它会向我显示两个按钮:OK和Cancel。我想在按下取消按钮时处理该操作,但我不知道如何到达该操作。我怎么才能拿到?
问题内容: 我正在查看一些代码,并看到了以下符号。我不确定这三个点的含义以及您所说的名称。 谢谢。 问题答案: 这意味着此方法可以接收多个Object作为参数。为了更好地低估,请从此处检查以下示例: 省略号(…)标识可变数量的参数,并在以下求和方法中进行了演示。 在JVM的限制内,使用所需的任意多个用逗号分隔的整数参数来调用sumsum方法。一些示例:sum(10,20)和sum(18,20,30
我有一个带有的布局,属性设置为: 菜单有五项: 第三项标签过长(第二个单词没有省略,只是没有显示): 标签稍微短一点会导致正确的行为: 有没有办法处理更长的标签?最好的解决方案是省略号并显示“更长的文本…”当全文没有空间时。