| 网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 |
![]() |
| Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道 |
|
package tree; 中国网管联盟bitsCN.com import java.util.ArrayList; 网管u家u.bitsCN.com import java.util.HashMap; 网管bitscn_com import java.util.List; 网管u家u.bitsCN.com
import java.util.Map; 网管下载dl.bitscn.com
import org.eclipse.jface.viewers.CheckboxTreeViewer; 网管bitscn_com
import org.eclipse.swt.SWT; 网管网www_bitscn_com import org.eclipse.swt.widgets.Display; 网管论坛bbs_bitsCN_com import org.eclipse.swt.widgets.Item; 中国网管论坛bbs.bitsCN.com import org.eclipse.swt.widgets.Shell; 网管下载dl.bitscn.com import org.eclipse.swt.widgets.Tree; 网管bitscn_com
import org.eclipse.swt.widgets.TreeItem; 网管网www_bitscn_com
import org.eclipse.swt.widgets.Widget; 网管下载dl.bitscn.com
public class TE { 网管网www_bitscn_com private Tree tree; 网管联盟bitsCN@com protected Shell shell; 网管网www_bitscn_com /** 中国网管论坛bbs.bitsCN.com * Launch the application 网管联盟bitsCN_com * @param args 中国网管联盟bitsCN.com */ 网管u家u.bitsCN.com public static void main(String[] args) { 网管网www.bitscn.com try { 网管下载dl.bitscn.com TE window = new TE(); 网管网www_bitscn_com
window.open(); 网管网www.bitscn.com
} catch (Exception e) { 中国网管联盟bitsCN.com e.printStackTrace(); 网管下载dl.bitscn.com } 网管网www_bitscn_com
} 中国网管论坛bbs.bitsCN.com /** 网管bitscn_com * Open the window 网管联盟bitsCN@com */ 中国网管论坛bbs.bitsCN.com
public void open() { 网管联盟bitsCN@com final Display display = Display.getDefault(); 网管bitscn_com createContents(); 中国网管论坛bbs.bitsCN.com shell.open(); 网管网www_bitscn_com shell.layout(); 网管联盟bitsCN@com while (!shell.isDisposed()) { 网管bitscn_com
if (!display.readAndDispatch()) 网管联盟bitsCN@com display.sleep(); 网管联盟bitsCN_com } 网管u家u.bitscn@com } 中国网管论坛bbs.bitsCN.com /** 网管联盟bitsCN@com * Create contents of the window 网管论坛bbs_bitsCN_com
*/ 中国网管论坛bbs.bitsCN.com protected void createContents() { 网管论坛bbs_bitsCN_com shell = new Shell(); 网管论坛bbs_bitsCN_com
shell.setSize(500, 375); 网管论坛bbs_bitsCN_com shell.setText("SWT Application"); 网管联盟bitsCN_com
final CheckboxTreeViewer checkboxTreeViewer = new CheckboxTreeViewer(shell, SWT.BORDER); 网管u家u.bitsCN.com tree = checkboxTreeViewer.getTree(); 网管u家u.bitscn@com tree.setBounds(23, 48, 459, 260); 网管网www.bitscn.com checkboxTreeViewer.setContentProvider(new Content()); 网管论坛bbs_bitsCN_com checkboxTreeViewer.setLabelProvider(new Label()); 网管下载dl.bitscn.com checkboxTreeViewer.setInput(getInputContent()); 网管论坛bbs_bitsCN_com /* Parent []p = new Parent[1]; 中国网管联盟bitsCN.com
p[0] = new Parent(); 网管联盟bitsCN_com
p[0].setName("小一"); 网管下载dl.bitscn.com
List<Child> ls = new ArrayList<Child>(); 网管u家u.bitsCN.com
Child c1 = new Child(); 网管u家u.bitsCN.com c1.setName("小一一"); 网管联盟bitsCN_com ls.add(c1); 网管联盟bitsCN_com p[0].setChild(ls);*/ 网管u家u.bitscn@com
checkboxTreeViewer.expandAll(); 中国网管论坛bbs.bitsCN.com
String []obj = new String[2]; 网管u家u.bitscn@com obj[0] = "小一"; 网管联盟bitsCN_com
obj[1] = "小二二"; 网管bitscn_com setChecked(obj, tree); 网管u家u.bitsCN.com
// 网管bitscn_com } 网管bitscn_com private void setChecked(String [] obj, Tree tree) { 网管论坛bbs_bitsCN_com Map map = new HashMap(); 中国网管论坛bbs.bitsCN.com for(int i = 0; i < obj.length; i++) { 中国网管论坛bbs.bitsCN.com map.put(obj[i], obj); 网管论坛bbs_bitsCN_com } 网管u家u.bitsCN.com internalSetChecked(map, tree); 中国网管论坛bbs.bitsCN.com } 网管bitscn_com
private Item[] getChildren(Widget o) { 网管网www_bitscn_com if (o instanceof TreeItem) { 网管网www_bitscn_com return ((TreeItem) o).getItems(); 网管网www.bitscn.com } 网管网www.bitscn.com
if (o instanceof Tree) { 网管联盟bitsCN@com return ((Tree) o).getItems(); 网管网www_bitscn_com } 网管网www_bitscn_com
return null; 网管联盟bitsCN_com
} 网管u家u.bitsCN.com private void internalSetChecked(Map checkedElements, 网管网www.bitscn.com Widget widget) { 网管bitscn_com Item[] items = getChildren(widget); 网管联盟bitsCN_com for (int i = 0; i < items.length; i++) { 网管下载dl.bitscn.com TreeItem item = (TreeItem) items[i]; 网管网www_bitscn_com Object data = item.getData(); 网管联盟bitsCN_com if (data != null) { 网管联盟bitsCN@com String temp = ((IName)data).getName(); 网管u家u.bitsCN.com boolean checked = checkedElements.containsKey(temp); 网管论坛bbs_bitsCN_com
if (checked != item.getChecked()) { 网管联盟bitsCN@com item.setChecked(checked); 网管网www_bitscn_com } 网管网www_bitscn_com
} 网管下载dl.bitscn.com internalSetChecked(checkedElements, item); 网管论坛bbs_bitsCN_com } 网管联盟bitsCN_com } 中国网管论坛bbs.bitsCN.com
private List getInputContent() { 网管下载dl.bitscn.com List<Parent> lst = new ArrayList<Parent>(); 网管u家u.bitscn@com
Parent p1 = new Parent(); 中国网管联盟bitsCN.com p1.setName("小一"); 中国网管论坛bbs.bitsCN.com List<Child> ls = new ArrayList<Child>(); 网管联盟bitsCN_com
Child c1 = new Child(); 网管下载dl.bitscn.com
c1.setName("小一一"); 网管网www_bitscn_com ls.add(c1); 网管u家u.bitsCN.com p1.setChild(ls); 网管网www_bitscn_com Parent p2 = new Parent(); 网管u家u.bitscn@com
p2.setName("小二"); 网管u家u.bitsCN.com List<Child> lss = new ArrayList<Child>(); 网管网www.bitscn.com Child c2 = new Child(); 网管下载dl.bitscn.com c2.setName("小二二"); 中国网管论坛bbs.bitsCN.com lss.add(c2); 网管论坛bbs_bitsCN_com p2.setChild(lss); 网管u家u.bitscn@com
lst.add(p1); 网管联盟bitsCN_com lst.add(p2); 中国网管论坛bbs.bitsCN.com return lst; 网管u家u.bitscn@com } 网管下载dl.bitscn.com } 中国网管论坛bbs.bitsCN.com |
|
0
|
评论加载中…