gpt4 book ai didi

java - 如何调用监听器以检查树选择对话框

转载 作者:行者123 更新时间:2023-11-30 11:23:25 26 4
gpt4 key购买 nike

我有一个 org.eclipse.ui.dialogs.CheckedTreeSelectionDialog 如下代码。

final CheckedTreeSelectionDialog checkedTreeSelectionDialog = new
CheckedTreeSelectionDialog(new Shell(),new ActionLabelProvider(), new
ActionContentProvider());

ActionLabelProvider 实现 org.eclipse.jface.viewers.ILabelProviderActionContentProvider 实现 org.eclipse.jface.viewers.ITreeContentProvider

我最初选择了一些元素,而一些元素不在 CheckedTreeSelectionDialog 中。

当对话框打开时,如果我选中未选中的元素,我想显示一条消息。

我该怎么做?

最佳答案

创建CheckedTreeSelectionDialog的子类并添加addCheckStateListener,使用下面的代码。

// When user checks a checkbox in the tree

import org.eclipse.jface.viewers.CheckStateChangedEvent;
import org.eclipse.jface.viewers.CheckboxTreeViewer;
import org.eclipse.jface.viewers.ICheckStateListener;
import org.eclipse.jface.viewers.ILabelProvider;
import org.eclipse.jface.viewers.ITreeContentProvider;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.ui.dialogs.CheckedTreeSelectionDialog;

public class MyCheckedTreeSelectionDialog extends CheckedTreeSelectionDialog {

public MyCheckedTreeSelectionDialog(Shell parent, ILabelProvider labelProvider, ITreeContentProvider contentProvider) {
super(parent, labelProvider, contentProvider);
}

@Override
protected CheckboxTreeViewer getTreeViewer() {
CheckboxTreeViewer treeViewer = super.getTreeViewer();
treeViewer.addCheckStateListener(new ICheckStateListener() {
public void checkStateChanged(CheckStateChangedEvent event) {

if (event.getChecked()) {
// Given element is checked
} else {
// Given element is un-checked
// Your message here
}
}
});

return treeViewer;
}

关于java - 如何调用监听器以检查树选择对话框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21232675/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com