⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 snippet287.java

📁 Eclipse JAVA开发软件中SWT各控件范例源码
💻 JAVA
字号:
/******************************************************************************* * Copyright (c) 2008 IBM Corporation and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: *     IBM Corporation - initial API and implementation *******************************************************************************/package org.eclipse.swt.snippets;/* * Tree example snippet: search for a string in a tree (recursively) * * For a list of all SWT example snippets see * http://www.eclipse.org/swt/snippets/ */import org.eclipse.swt.SWT;import org.eclipse.swt.layout.*;import org.eclipse.swt.widgets.*;public class Snippet287 {static Tree tree;public static void main(String[] args) {	final String SEARCH_STRING = "4b";	Display display = new Display ();	Shell shell = new Shell (display);	shell.setBounds (10,10,300,300);	shell.setLayout (new GridLayout ());	/* create the Tree */	tree = new Tree (shell, SWT.FULL_SELECTION);	tree.setLinesVisible (true);	tree.setLayoutData (new GridData (GridData.FILL_BOTH));	for (int i = 0; i < 3; i++) {		new TreeColumn (tree, SWT.NONE).setWidth (90);	}	int index = 0;	for (int i = 0; i < 3; i++) {		TreeItem item = createItem (null, index++);		for (int j = 0; j < i; j++) {			item = createItem (item, index++);		}	}	Button button = new Button (shell, SWT.PUSH);	button.setText ("Find '" + SEARCH_STRING + "'");	button.addListener (SWT.Selection, new Listener () {		public void handleEvent (Event event) {			int itemCount = tree.getItemCount ();			for (int i = 0; i < itemCount; i++) {				TreeItem item = tree.getItem (i);				boolean success = find (item, SEARCH_STRING);				if (success) {					System.out.println ("Found it");					return;				}			}			System.out.println ("Did not find it");		}	});	shell.open ();	while (!shell.isDisposed ()) {		if (!display.readAndDispatch ()) display.sleep ();	}	display.dispose ();}/* for creating sample Tree */static TreeItem createItem (TreeItem parent, int itemIndex) {	TreeItem newItem = null;	if (parent == null) {	/* root level item */		newItem = new TreeItem (tree, SWT.NONE);	} else {		newItem = new TreeItem (parent, SWT.NONE);	}	String indexString = String.valueOf (itemIndex); 	newItem.setText(new String[] {		indexString + 'a', indexString + 'b', indexString + 'c'});	return newItem;}/* recursive find */public static boolean find (TreeItem item, String searchString) {	/* check this item */	for (int i = 0; i < tree.getColumnCount (); i++) {		String contents = item.getText (i);		if ((contents.toUpperCase ().indexOf (searchString.toUpperCase ())) != -1) {			tree.setSelection (item);			return true;		}	}	if (!item.getExpanded ()) return false; /* don't check child items */	/* check child items */	int childCount = item.getItemCount ();	for (int i = 0; i < childCount; i++) {		TreeItem child = item.getItem (i);		boolean success = find (child, searchString);		if (success) return true;	}	return false;}}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -