SWT如何控制TreeItem的展开 我想在用户单击展开TreeItem的某个节点时,弹出一个对话框,进行一些权限验证,如果通过了,就展开当前节点,如果没通过,则不展开当前节点。试了treeExpanded,但是这个达不到效果,一点击展开就直接展开了,没有验证。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 tree.addTreeListener(new TreeListener() { @Override public void treeCollapsed(TreeEvent e) { } @Override public void treeExpanded(TreeEvent e) { if (targetitem == e.item) { MessageBox box = new MessageBox(Display.getDefault() .getActiveShell()); box.open(); } } }); 这个你关闭了MessageBox后还是会展开的,只是在展开前弹出个对话框而已,这样即使验证不通过也是会展开的 tree.addTreeListener(new TreeListener() { @Override public void treeCollapsed(TreeEvent e) { } @Override public void treeExpanded(TreeEvent e) { if (targetitem == e.item) { MessageBox box = new MessageBox(Display.getDefault() .getActiveShell()); box.open(); } } }); class AuthTreeItem extends TreeItem { public AuthTreeItem(Tree tree, int i) { super(tree, i); } public void setExpanded(boolean exp) { MessageBox box = new MessageBox(Display.getDefault() .getActiveShell()); if (box.open() == SWT.OK) { super.setExpanded(exp); } } } 需要继承来覆盖setExpanded吗?有没有直接设置的? Swing问题 小小的关于JAVA的问题~~ 这个正则表达式是什么意识 带main函数的java, 怎么取得这个java的本地路径? 有段代码不知道哪里有错误请赐教 简单问提一个! 求解一个java多态的问题!感谢 prepareStatement的问题? 如何升级jbuilder7的jdk? applet的jdbc问题,高手救命!! 大家说说都知道的j2se中那些类实现了单例模式? 记事本的保存功能怎么用JAVA实现(请不要把另存为的功能看成和保存功能一样)
public void treeCollapsed(TreeEvent e) { } @Override
public void treeExpanded(TreeEvent e) {
if (targetitem == e.item) {
MessageBox box = new MessageBox(Display.getDefault()
.getActiveShell());
box.open();
}
}
});
public void treeCollapsed(TreeEvent e) { } @Override
public void treeExpanded(TreeEvent e) {
if (targetitem == e.item) {
MessageBox box = new MessageBox(Display.getDefault()
.getActiveShell());
box.open();
}
}
});
public AuthTreeItem(Tree tree, int i) {
super(tree, i);
} public void setExpanded(boolean exp) {
MessageBox box = new MessageBox(Display.getDefault()
.getActiveShell());
if (box.open() == SWT.OK) {
super.setExpanded(exp);
}
}
}