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

📄 gridlayouttab.java

📁 很好的学习swt的 sample 很好的学习swt的 sample
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	/**	 * Creates the example layout.	 */	void createLayout () {		gridLayout = new GridLayout ();		layoutComposite.setLayout (gridLayout);	}		/** 	 * Disposes the editors without placing their contents	 * into the table.	 */	void disposeEditors () {		comboEditor.setEditor (null, null, -1);		combo.dispose ();		widthText.dispose ();		heightText.dispose ();		hAlign.dispose ();		vAlign.dispose ();		hIndent.dispose ();		hSpan.dispose ();		vSpan.dispose ();		hGrab.dispose ();		vGrab.dispose ();	}		/**	 * Generates code for the example layout.	 */		StringBuffer generateLayoutCode () {		StringBuffer code = new StringBuffer ();		code.append ("\t\tGridLayout gridLayout = new GridLayout ();\n");		if (gridLayout.numColumns != 1) {			code.append ("\t\tgridLayout.numColumns = " + gridLayout.numColumns + ";\n");		}		if (gridLayout.makeColumnsEqualWidth) {			code.append ("\t\tgridLayout.makeColumnsEqualWidth = true;\n");		}		if (gridLayout.marginHeight != 5) {			code.append ("\t\tgridLayout.marginHeight = " + gridLayout.marginHeight + ";\n");		}		if (gridLayout.marginWidth != 5) {			code.append ("\t\tgridLayout.marginWidth = " + gridLayout.marginWidth + ";\n");		}		if (gridLayout.horizontalSpacing != 5) {			code.append ("\t\tgridLayout.horizontalSpacing = " + gridLayout.horizontalSpacing + ";\n");		}		if (gridLayout.verticalSpacing != 5) {			code.append ("\t\tgridLayout.verticalSpacing = " + gridLayout.verticalSpacing + ";\n");		}		code.append ("\t\tshell.setLayout (gridLayout);\n");				boolean first = true;		for (int i = 0; i < children.length; i++) {			Control control = children [i];			code.append (getChildCode (control, i));			GridData data = (GridData) control.getLayoutData ();			if (data != null) {				code.append ("\t\t");				if (first) {					code.append ("GridData ");					first = false;				}				code.append ("data = new GridData ();\n");					if (data.widthHint != SWT.DEFAULT) {					code.append ("\t\tdata.widthHint = " + data.widthHint + ";\n");				}				if (data.heightHint != SWT.DEFAULT) {					code.append ("\t\tdata.heightHint = " + data.heightHint + ";\n");				}				if (data.horizontalAlignment != GridData.BEGINNING) {					String alignment;					int hAlignment = data.horizontalAlignment;					if (hAlignment == GridData.CENTER) alignment = "GridData.CENTER";					else if (hAlignment == GridData.END) alignment = "GridData.END";					else alignment = "GridData.FILL";					code.append ("\t\tdata.horizontalAlignment = " + alignment + ";\n");				}				if (data.verticalAlignment != GridData.CENTER) {					String alignment;					int vAlignment = data.verticalAlignment;					if (vAlignment == GridData.BEGINNING) alignment = "GridData.BEGINNING";					else if (vAlignment == GridData.END) alignment = "GridData.END";					else alignment = "GridData.FILL";					code.append ("\t\tdata.verticalAlignment = " + alignment + ";\n");				}					if (data.horizontalIndent != 0) {					code.append ("\t\tdata.horizontalIndent = " + data.horizontalIndent + ";\n");				}				if (data.horizontalSpan != 1) {					code.append ("\t\tdata.horizontalSpan = " + data.horizontalSpan + ";\n");				}				if (data.verticalSpan != 1) {					code.append ("\t\tdata.verticalSpan = " + data.verticalSpan + ";\n");				}				if (data.grabExcessHorizontalSpace) {					code.append ("\t\tdata.grabExcessHorizontalSpace = true;\n");				}				if (data.grabExcessVerticalSpace) {					code.append ("\t\tdata.grabExcessVerticalSpace = true;\n");				}				if (code.substring (code.length () - 33).equals ("GridData data = new GridData ();\n")) {					code.delete (code.length () - 33, code.length ());					first = true;				} else if (code.substring (code.length () - 24).equals ("data = new GridData ();\n")) { 					code.delete (code.length () - 24, code.length ());				} else {						code.append ("\t\t" + names [i] + ".setLayoutData (data);\n");				}			}		}		return code;	}		/**	 * Returns the layout data field names.	 */	String [] getLayoutDataFieldNames() {		return new String [] {			"",			"Control", 			"width", 			"height", 			"horizontalAlignment", 			"verticalAlignment", 			"horizontalIndent", 			"horizontalSpan",			"verticalSpan", 			"grabExcessHorizontalSpace", 			"grabExcessVerticalSpace"		};	}		/**	 * Gets the text for the tab folder item.	 */	String getTabText () {		return "GridLayout";	}		/**	 * Takes information from TableEditors and stores it.	 */	void resetEditors () {		resetEditors (false);	}		void resetEditors (boolean tab) {		TableItem oldItem = comboEditor.getItem ();		if (oldItem != null) {			int row = table.indexOf (oldItem);			try {				new Integer (widthText.getText ()).intValue ();			} catch (NumberFormatException e) {				widthText.setText (oldItem.getText (WIDTH_COL));			}			try {				new Integer (heightText.getText ()).intValue ();			} catch (NumberFormatException e) {				heightText.setText (oldItem.getText (HEIGHT_COL));			}			try {				new Integer (hIndent.getText ()).intValue ();			} catch (NumberFormatException e) {				hIndent.setText (oldItem.getText (HINDENT_COL));			}			try {				new Integer (hSpan.getText ()).intValue ();			} catch (NumberFormatException e) {				hSpan.setText (oldItem.getText (HSPAN_COL));			}			try {				new Integer (vSpan.getText ()).intValue ();			} catch (NumberFormatException e) {				vSpan.setText (oldItem.getText (VSPAN_COL));			}			String [] insert = new String [] {				String.valueOf (row), combo.getText (), widthText.getText (), heightText.getText (),				hAlign.getText (), vAlign.getText (), hIndent.getText (), 				hSpan.getText (), vSpan.getText (), hGrab.getText (), vGrab.getText ()			};			data.setElementAt (insert, row);			for (int i = 0; i < TOTAL_COLS; i++) {				oldItem.setText (i, ((String [])data.elementAt (row)) [i]);			}			if (!tab) disposeEditors ();		}		setLayoutState ();				refreshLayoutComposite ();		setLayoutData ();		layoutComposite.layout (true);		layoutGroup.layout (true);	}			/**	 * Sets the layout data for the children of the layout.	 */	void setLayoutData () {		Control [] children = layoutComposite.getChildren ();		TableItem [] items = table.getItems ();		GridData data;		int hIndent, hSpan, vSpan;		String vAlign, hAlign, vGrab, hGrab;		for (int i = 0; i < children.length; i++) {			data = new GridData ();			/* Set widthHint and heightHint */			data.widthHint = new Integer (items [i].getText (WIDTH_COL)).intValue ();			data.heightHint = new Integer (items [i].getText (HEIGHT_COL)).intValue ();			/* Set vertical alignment and horizontal alignment */			hAlign = items [i].getText (HALIGN_COL);			if (hAlign.equals ("CENTER")) {				data.horizontalAlignment = GridData.CENTER;			} else if (hAlign.equals ("END")) {				data.horizontalAlignment = GridData.END;			} else if (hAlign.equals ("FILL")) {				data.horizontalAlignment = GridData.FILL;			} else {				data.horizontalAlignment = GridData.BEGINNING;			}			vAlign = items [i].getText (VALIGN_COL);			if (vAlign.equals ("BEGINNING")) {				data.verticalAlignment = GridData.BEGINNING;			} else if (vAlign.equals ("END")) {				data.verticalAlignment = GridData.END;			} else if (vAlign.equals ("FILL")) {				data.verticalAlignment = GridData.FILL;			} else {				data.verticalAlignment = GridData.CENTER;			}			/* Set indents and spans */			hIndent = new Integer (items [i].getText (HINDENT_COL)).intValue ();			data.horizontalIndent = hIndent;			hSpan = new Integer (items [i].getText (HSPAN_COL)).intValue ();			data.horizontalSpan = hSpan;			vSpan = new Integer (items [i].getText (VSPAN_COL)).intValue ();			data.verticalSpan = vSpan;			/* Set grabbers */			hGrab = items [i].getText (HGRAB_COL);			if (hGrab.equals ("true")) {				data.grabExcessHorizontalSpace = true;			} else {				data.grabExcessHorizontalSpace = false;			}			vGrab = items [i].getText (VGRAB_COL);			if (vGrab.equals ("true")) {				data.grabExcessVerticalSpace = true;			} else {				data.grabExcessVerticalSpace = false;			}			children [i].setLayoutData (data);		}	}		/**	 * Sets the state of the layout.	 */	void setLayoutState () {		/* Set the columns for the layout */		try {			gridLayout.numColumns = new Integer (numColumns.getText ()).intValue ();		} catch (NumberFormatException e) {			gridLayout.numColumns = 1;		}		gridLayout.makeColumnsEqualWidth = makeColumnsEqualWidth.getSelection ();				/* Set the margins and spacing */		try {			gridLayout.marginHeight = new Integer (marginHeight.getText ()).intValue ();		} catch (NumberFormatException e) {			gridLayout.marginHeight = 5;			marginHeight.select (2);		}		try {			gridLayout.marginWidth = new Integer (marginWidth.getText ()).intValue ();		} catch (NumberFormatException e) {			gridLayout.marginWidth = 5;			marginWidth.select (2);		}		try {			gridLayout.horizontalSpacing = new Integer (horizontalSpacing.getText ()).intValue ();		} catch (NumberFormatException e) {			gridLayout.horizontalSpacing = 5;			horizontalSpacing.select (2);		}		try {			gridLayout.verticalSpacing = new Integer (verticalSpacing.getText ()).intValue ();		} catch (NumberFormatException e) {			gridLayout.verticalSpacing = 5;			verticalSpacing.select (2);		}	}}

⌨️ 快捷键说明

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