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

📄 addressbook.java

📁 SUN公司eclipse3.2.2经典例子
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
	}	}/** * Creates all the items located in the File submenu and * associate all the menu items with their appropriate * functions. * * @param	menuBar Menu *				the <code>Menu</code> that file contain *				the File submenu. */private void createFileMenu(Menu menuBar) {	//File menu.	MenuItem item = new MenuItem(menuBar, SWT.CASCADE);	item.setText(resAddressBook.getString("File_menu_title"));	Menu menu = new Menu(shell, SWT.DROP_DOWN);	item.setMenu(menu);	/** 	 * Adds a listener to handle enabling and disabling 	 * some items in the Edit submenu.	 */	menu.addMenuListener(new MenuAdapter() {		public void menuShown(MenuEvent e) {			Menu menu = (Menu)e.widget;			MenuItem[] items = menu.getItems();			items[1].setEnabled(table.getSelectionCount() != 0); // edit contact			items[5].setEnabled((file != null) && isModified); // save			items[6].setEnabled(table.getItemCount() != 0); // save as		}	});	//File -> New Contact	MenuItem subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("New_contact"));	subItem.setAccelerator(SWT.MOD1 + 'N');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			newEntry();		}	});	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("Edit_contact"));	subItem.setAccelerator(SWT.MOD1 + 'E');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			TableItem[] items = table.getSelection();			if (items.length == 0) return;			editEntry(items[0]);		}	});		new MenuItem(menu, SWT.SEPARATOR);		//File -> New Address Book	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("New_address_book"));	subItem.setAccelerator(SWT.MOD1 + 'B');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			if (closeAddressBook()) {				newAddressBook();			}		}	});	//File -> Open	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("Open_address_book"));	subItem.setAccelerator(SWT.MOD1 + 'O');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			if (closeAddressBook()) {				openAddressBook();			}		}	});	//File -> Save.	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("Save_address_book"));	subItem.setAccelerator(SWT.MOD1 + 'S');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			save();		}	});		//File -> Save As.	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("Save_book_as"));	subItem.setAccelerator(SWT.MOD1 + 'A');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			saveAs();		}	});			new MenuItem(menu, SWT.SEPARATOR);		//File -> Exit.	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("Exit"));	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			shell.close();		}	});}/** * Creates all the items located in the Edit submenu and * associate all the menu items with their appropriate * functions. * * @param	menuBar Menu *				the <code>Menu</code> that file contain *				the Edit submenu. * * @see	#createSortMenu() */private MenuItem createEditMenu(Menu menuBar) {	//Edit menu.	MenuItem item = new MenuItem(menuBar, SWT.CASCADE);	item.setText(resAddressBook.getString("Edit_menu_title"));	Menu menu = new Menu(shell, SWT.DROP_DOWN);	item.setMenu(menu);		/** 	 * Add a listener to handle enabling and disabling 	 * some items in the Edit submenu.	 */	menu.addMenuListener(new MenuAdapter() {		public void menuShown(MenuEvent e) {			Menu menu = (Menu)e.widget;			MenuItem[] items = menu.getItems();			int count = table.getSelectionCount();			items[0].setEnabled(count != 0); // edit			items[1].setEnabled(count != 0); // copy			items[2].setEnabled(copyBuffer != null); // paste			items[3].setEnabled(count != 0); // delete			items[5].setEnabled(table.getItemCount() != 0); // sort		}	});		//Edit -> Edit	MenuItem subItem = new MenuItem(menu, SWT.PUSH);	subItem.setText(resAddressBook.getString("Edit"));	subItem.setAccelerator(SWT.MOD1 + 'E');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			TableItem[] items = table.getSelection();			if (items.length == 0) return;			editEntry(items[0]);		}	});	//Edit -> Copy	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("Copy"));	subItem.setAccelerator(SWT.MOD1 + 'C');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			TableItem[] items = table.getSelection();			if (items.length == 0) return;			copyBuffer = new String[table.getColumnCount()];			for (int i = 0; i < copyBuffer.length; i++) {				copyBuffer[i] = items[0].getText(i);			}		}	});		//Edit -> Paste	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("Paste"));	subItem.setAccelerator(SWT.MOD1 + 'V');	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			if (copyBuffer == null) return;			TableItem item = new TableItem(table, SWT.NONE);			item.setText(copyBuffer);			isModified = true;		}	});		//Edit -> Delete	subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("Delete"));	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			TableItem[] items = table.getSelection();			if (items.length == 0) return;			items[0].dispose();			isModified = true;		}	});		new MenuItem(menu, SWT.SEPARATOR);		//Edit -> Sort(Cascade)	subItem = new MenuItem(menu, SWT.CASCADE);	subItem.setText(resAddressBook.getString("Sort"));	Menu submenu = createSortMenu();	subItem.setMenu(submenu);		return item;	}/** * Creates all the items located in the Sort cascading submenu and * associate all the menu items with their appropriate * functions. * * @return	Menu *			The cascading menu with all the sort menu items on it. */private Menu createSortMenu() {	Menu submenu = new Menu(shell, SWT.DROP_DOWN);	MenuItem subitem;	for(int i = 0; i < columnNames.length; i++) {		subitem = new MenuItem (submenu, SWT.NONE);		subitem.setText(columnNames [i]);		final int column = i;		subitem.addSelectionListener(new SelectionAdapter() {			public void widgetSelected(SelectionEvent e) {				sort(column);			}		});	}		return submenu;}/** * Creates all the items located in the Search submenu and * associate all the menu items with their appropriate * functions. * * @param	menuBar	Menu *				the <code>Menu</code> that file contain *				the Search submenu. */private void createSearchMenu(Menu menuBar) {	//Search menu.	MenuItem item = new MenuItem(menuBar, SWT.CASCADE);	item.setText(resAddressBook.getString("Search_menu_title"));	Menu searchMenu = new Menu(shell, SWT.DROP_DOWN);	item.setMenu(searchMenu);	//Search -> Find...	item = new MenuItem(searchMenu, SWT.NONE);	item.setText(resAddressBook.getString("Find"));	item.setAccelerator(SWT.MOD1 + 'F');	item.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			searchDialog.setMatchCase(false);			searchDialog.setMatchWord(false);			searchDialog.setSearchDown(true);			searchDialog.setSearchString("");			searchDialog.setSelectedSearchArea(0);			searchDialog.open();		}	});	//Search -> Find Next	item = new MenuItem(searchMenu, SWT.NONE);	item.setText(resAddressBook.getString("Find_next"));	item.setAccelerator(SWT.F3);	item.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			searchDialog.open();		}	});}/**  * Creates all items located in the popup menu and associates * all the menu items with their appropriate functions. * * @return	Menu *			The created popup menu. */private Menu createPopUpMenu() {	Menu popUpMenu = new Menu(shell, SWT.POP_UP);	/** 	 * Adds a listener to handle enabling and disabling 	 * some items in the Edit submenu.	 */	popUpMenu.addMenuListener(new MenuAdapter() {		public void menuShown(MenuEvent e) {			Menu menu = (Menu)e.widget;			MenuItem[] items = menu.getItems();			int count = table.getSelectionCount();			items[2].setEnabled(count != 0); // edit			items[3].setEnabled(count != 0); // copy			items[4].setEnabled(copyBuffer != null); // paste			items[5].setEnabled(count != 0); // delete			items[7].setEnabled(table.getItemCount() != 0); // find		}	});	//New	MenuItem item = new MenuItem(popUpMenu, SWT.PUSH);	item.setText(resAddressBook.getString("Pop_up_new"));	item.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			newEntry();		}	});		new MenuItem(popUpMenu, SWT.SEPARATOR);			//Edit	item = new MenuItem(popUpMenu, SWT.PUSH);	item.setText(resAddressBook.getString("Pop_up_edit"));	item.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			TableItem[] items = table.getSelection();			if (items.length == 0) return;			editEntry(items[0]);		}	});	//Copy	item = new MenuItem(popUpMenu, SWT.PUSH);	item.setText(resAddressBook.getString("Pop_up_copy"));	item.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			TableItem[] items = table.getSelection();			if (items.length == 0) return;			copyBuffer = new String[table.getColumnCount()];			for (int i = 0; i < copyBuffer.length; i++) {				copyBuffer[i] = items[0].getText(i);			}		}	});		//Paste	item = new MenuItem(popUpMenu, SWT.PUSH);	item.setText(resAddressBook.getString("Pop_up_paste"));	item.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			if (copyBuffer == null) return;			TableItem item = new TableItem(table, SWT.NONE);			item.setText(copyBuffer);			isModified = true;		}	});		//Delete	item = new MenuItem(popUpMenu, SWT.PUSH);	item.setText(resAddressBook.getString("Pop_up_delete"));	item.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			TableItem[] items = table.getSelection();			if (items.length == 0) return;			items[0].dispose();			isModified = true;		}	});		new MenuItem(popUpMenu, SWT.SEPARATOR);			//Find...	item = new MenuItem(popUpMenu, SWT.PUSH);	item.setText(resAddressBook.getString("Pop_up_find"));	item.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			searchDialog.open();		}	});	return popUpMenu;}/** * Creates all the items located in the Help submenu and * associate all the menu items with their appropriate * functions. * * @param	menuBar	Menu *				the <code>Menu</code> that file contain *				the Help submenu. */private void createHelpMenu(Menu menuBar) {		//Help Menu	MenuItem item = new MenuItem(menuBar, SWT.CASCADE);	item.setText(resAddressBook.getString("Help_menu_title"));		Menu menu = new Menu(shell, SWT.DROP_DOWN);	item.setMenu(menu);		//Help -> About Text Editor	MenuItem subItem = new MenuItem(menu, SWT.NONE);	subItem.setText(resAddressBook.getString("About"));	subItem.addSelectionListener(new SelectionAdapter() {		public void widgetSelected(SelectionEvent e) {			MessageBox box = new MessageBox(shell, SWT.NONE);			box.setText(resAddressBook.getString("About_1") + shell.getText());			box.setMessage(shell.getText() + resAddressBook.getString("About_2"));			box.open();				}	});}/** * To compare entries (rows) by the given column */private class RowComparator implements Comparator {	private int column;		/**	 * Constructs a RowComparator given the column index	 * @param col The index (starting at zero) of the column	 */	public RowComparator(int col) {		column = col;	}		/**	 * Compares two rows (type String[]) using the specified	 * column entry.	 * @param obj1 First row to compare	 * @param obj2 Second row to compare	 * @return negative if obj1 less than obj2, positive if	 * 			obj1 greater than obj2, and zero if equal.	 */	public int compare(Object obj1, Object obj2) {		String[] row1 = (String[])obj1;		String[] row2 = (String[])obj2;				return row1[column].compareTo(row2[column]);	}}}

⌨️ 快捷键说明

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