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

📄 tabletab.java

📁 SUN公司eclipse3.2.2经典例子
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	/**	 * Creates the "Style" group.	 */	void createStyleGroup () {		super.createStyleGroup ();				/* Create the extra widgets */		checkButton = new Button (styleGroup, SWT.CHECK);		checkButton.setText ("SWT.CHECK");		fullSelectionButton = new Button (styleGroup, SWT.CHECK);		fullSelectionButton.setText ("SWT.FULL_SELECTION");		hideSelectionButton = new Button (styleGroup, SWT.CHECK);		hideSelectionButton.setText ("SWT.HIDE_SELECTION");	}		/**	 * Gets the "Example" widget children's items, if any.	 *	 * @return an array containing the example widget children's items	 */	Item [] getExampleWidgetItems () {		Item [] columns = table1.getColumns();		Item [] items = table1.getItems();		Item [] allItems = new Item [columns.length + items.length];		System.arraycopy(columns, 0, allItems, 0, columns.length);		System.arraycopy(items, 0, allItems, columns.length, items.length);		return allItems;	}		/**	 * Gets the "Example" widget children.	 */	Widget [] getExampleWidgets () {		return new Widget [] {table1};	}		/**	 * Returns a list of set/get API method names (without the set/get prefix)	 * that can be used to set/get values in the example control(s).	 */	String[] getMethodNames() {		return new String[] {"ColumnOrder", "ItemCount", "Selection", "SelectionIndex", "ToolTipText", "TopIndex"};	}	String setMethodName(String methodRoot) {		/* Override to handle special case of int getSelectionIndex()/setSelection(int) */		return (methodRoot.equals("SelectionIndex")) ? "setSelection" : "set" + methodRoot;	}	void packColumns () {		int columnCount = table1.getColumnCount(); 		for (int i = 0; i < columnCount; i++) {			TableColumn tableColumn = table1.getColumn(i);			tableColumn.pack();		}	}	Object[] parameterForType(String typeName, String value, Widget widget) {		if (value.equals("")) return new Object[] {new TableItem[0]}; // bug in Table?		if (typeName.equals("org.eclipse.swt.widgets.TableItem")) {			TableItem item = findItem(value, ((Table) widget).getItems());			if (item != null) return new Object[] {item};		}		if (typeName.equals("[Lorg.eclipse.swt.widgets.TableItem;")) {			String[] values = split(value, ',');			TableItem[] items = new TableItem[values.length];			for (int i = 0; i < values.length; i++) {				items[i] = findItem(values[i], ((Table) widget).getItems());			}			return new Object[] {items};		}		return super.parameterForType(typeName, value, widget);	}	TableItem findItem(String value, TableItem[] items) {		for (int i = 0; i < items.length; i++) {			TableItem item = items[i];			if (item.getText().equals(value)) return item;		}		return null;	}	/**	 * Gets the text for the tab folder item.	 */	String getTabText () {		return "Table";	}		/**	 * Sets the foreground color, background color, and font	 * of the "Example" widgets to their default settings.	 * Also sets foreground and background color of TableItem [0]	 * to default settings.	 */	void resetColorsAndFonts () {		super.resetColorsAndFonts ();		Color oldColor = itemForegroundColor;		itemForegroundColor = null;		setItemForeground ();		if (oldColor != null) oldColor.dispose();		oldColor = itemBackgroundColor;		itemBackgroundColor = null;		setItemBackground ();		if (oldColor != null) oldColor.dispose();		Font oldFont = font;		itemFont = null;		setItemFont ();		if (oldFont != null) oldFont.dispose();		oldColor = cellForegroundColor;		cellForegroundColor = null;		setCellForeground ();		if (oldColor != null) oldColor.dispose();		oldColor = cellBackgroundColor;		cellBackgroundColor = null;		setCellBackground ();		if (oldColor != null) oldColor.dispose();		oldFont = font;		cellFont = null;		setCellFont ();		if (oldFont != null) oldFont.dispose();	}		/**	 * Sets the background color of the Row 0 TableItem in column 1.	 */	void setCellBackground () {		if (!instance.startup) {			table1.getItem (0).setBackground (1, cellBackgroundColor);		}		/* Set the background color item's image to match the background color of the cell. */		Color color = cellBackgroundColor;		if (color == null) color = table1.getItem (0).getBackground (1);		TableItem item = colorAndFontTable.getItem(CELL_BACKGROUND_COLOR);		Image oldImage = item.getImage();		if (oldImage != null) oldImage.dispose();		item.setImage (colorImage(color));	}		/**	 * Sets the foreground color of the Row 0 TableItem in column 1.	 */	void setCellForeground () {		if (!instance.startup) {			table1.getItem (0).setForeground (1, cellForegroundColor);		}		/* Set the foreground color item's image to match the foreground color of the cell. */		Color color = cellForegroundColor;		if (color == null) color = table1.getItem (0).getForeground (1);		TableItem item = colorAndFontTable.getItem(CELL_FOREGROUND_COLOR);		Image oldImage = item.getImage();		if (oldImage != null) oldImage.dispose();		item.setImage (colorImage(color));	}		/**	 * Sets the font of the Row 0 TableItem in column 1.	 */	void setCellFont () {		if (!instance.startup) {			table1.getItem (0).setFont (1, cellFont);		}		/* Set the font item's image to match the font of the item. */		Font ft = cellFont;		if (ft == null) ft = table1.getItem (0).getFont (1);		TableItem item = colorAndFontTable.getItem(CELL_FONT);		Image oldImage = item.getImage();		if (oldImage != null) oldImage.dispose();		item.setImage (fontImage(ft));		item.setFont(ft);		colorAndFontTable.layout ();	}	/**	 * Sets the background color of TableItem [0].	 */	void setItemBackground () {		if (!instance.startup) {			table1.getItem (0).setBackground (itemBackgroundColor);		}		/* Set the background color item's image to match the background color of the item. */		Color color = itemBackgroundColor;		if (color == null) color = table1.getItem (0).getBackground ();		TableItem item = colorAndFontTable.getItem(ITEM_BACKGROUND_COLOR);		Image oldImage = item.getImage();		if (oldImage != null) oldImage.dispose();		item.setImage (colorImage(color));	}		/**	 * Sets the foreground color of TableItem [0].	 */	void setItemForeground () {		if (!instance.startup) {			table1.getItem (0).setForeground (itemForegroundColor);		}		/* Set the foreground color item's image to match the foreground color of the item. */		Color color = itemForegroundColor;		if (color == null) color = table1.getItem (0).getForeground ();		TableItem item = colorAndFontTable.getItem(ITEM_FOREGROUND_COLOR);		Image oldImage = item.getImage();		if (oldImage != null) oldImage.dispose();		item.setImage (colorImage(color));	}		/**	 * Sets the font of TableItem 0.	 */	void setItemFont () {		if (!instance.startup) {			table1.getItem (0).setFont (itemFont);		}		/* Set the font item's image to match the font of the item. */		Font ft = itemFont;		if (ft == null) ft = table1.getItem (0).getFont ();		TableItem item = colorAndFontTable.getItem(ITEM_FONT);		Image oldImage = item.getImage();		if (oldImage != null) oldImage.dispose();		item.setImage (fontImage(ft));		item.setFont(ft);		colorAndFontTable.layout ();	}	/**	 * Sets the moveable columns state of the "Example" widgets.	 */	void setColumnsMoveable () {		boolean selection = moveableColumns.getSelection();		TableColumn[] columns = table1.getColumns();		for (int i = 0; i < columns.length; i++) {			columns[i].setMoveable(selection);		}	}	/**	 * Sets the resizable columns state of the "Example" widgets.	 */	void setColumnsResizable () {		boolean selection = resizableColumns.getSelection();		TableColumn[] columns = table1.getColumns();		for (int i = 0; i < columns.length; i++) {			columns[i].setResizable(selection);		}	}	/**	 * Sets the state of the "Example" widgets.	 */	void setExampleWidgetState () {		setItemBackground ();		setItemForeground ();		setItemFont ();		setCellBackground ();		setCellForeground ();		setCellFont ();		if (!instance.startup) {			setColumnsMoveable ();			setColumnsResizable ();			setWidgetHeaderVisible ();			setWidgetSortIndicator ();			setWidgetLinesVisible ();		}		super.setExampleWidgetState ();		checkButton.setSelection ((table1.getStyle () & SWT.CHECK) != 0);		fullSelectionButton.setSelection ((table1.getStyle () & SWT.FULL_SELECTION) != 0);		hideSelectionButton.setSelection ((table1.getStyle () & SWT.HIDE_SELECTION) != 0);		try {			TableColumn column = table1.getColumn(0);			moveableColumns.setSelection (column.getMoveable());			resizableColumns.setSelection (column.getResizable());		} catch (IllegalArgumentException ex) {}		headerVisibleButton.setSelection (table1.getHeaderVisible());		linesVisibleButton.setSelection (table1.getLinesVisible());	}		/**	 * Sets the header visible state of the "Example" widgets.	 */	void setWidgetHeaderVisible () {		table1.setHeaderVisible (headerVisibleButton.getSelection ());	}		/**	 * Sets the sort indicator state of the "Example" widgets.	 */	void setWidgetSortIndicator () {		if (sortIndicatorButton.getSelection ()) {			/* Reset to known state: 'down' on column 0. */			table1.setSortDirection (SWT.DOWN);			TableColumn [] columns = table1.getColumns();			for (int i = 0; i < columns.length; i++) {				TableColumn column = columns[i];				if (i == 0) table1.setSortColumn(column);				SelectionListener listener = new SelectionAdapter() {					public void widgetSelected(SelectionEvent e) {						int sortDirection = SWT.DOWN;						if (e.widget == table1.getSortColumn()) {							/* If the sort column hasn't changed, cycle down -> up -> none. */							switch (table1.getSortDirection ()) {							case SWT.DOWN: sortDirection = SWT.UP; break;							case SWT.UP: sortDirection = SWT.NONE; break;							}						} else {							table1.setSortColumn((TableColumn)e.widget);						}						table1.setSortDirection (sortDirection);					}				};				column.addSelectionListener(listener);				column.setData("SortListener", listener);	//$NON-NLS-1$			}		} else {			table1.setSortDirection (SWT.NONE);			TableColumn [] columns = table1.getColumns();			for (int i = 0; i < columns.length; i++) {				SelectionListener listener = (SelectionListener)columns[i].getData("SortListener");	//$NON-NLS-1$				if (listener != null) columns[i].removeSelectionListener(listener);			}		}	}		/**	 * Sets the lines visible state of the "Example" widgets.	 */	void setWidgetLinesVisible () {		table1.setLinesVisible (linesVisibleButton.getSelection ());	}		protected void specialPopupMenuItems(Menu menu, Event event) {    	MenuItem item = new MenuItem(menu, SWT.PUSH);    	item.setText("getItem(Point) on mouse coordinates");    	menuMouseCoords = table1.toControl(new Point(event.x, event.y));    	item.addSelectionListener(new SelectionAdapter() {    		public void widgetSelected(SelectionEvent e) {    			eventConsole.append ("getItem(Point(" + menuMouseCoords + ")) returned: " + table1.getItem(menuMouseCoords));    			eventConsole.append ("\n");    		};    	});	}}

⌨️ 快捷键说明

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