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

📄 treemousehandler.java

📁 Owing to the applet Gantt chart source yard, already Chinese melt, Gantt chart can demonstrate a Chi
💻 JAVA
字号:
/** *   TreeMouseHandler.java *   Copyright 2005 Carlos Silva A. *  *   Licensed under the Apache License, Version 2.0 (the "License"); *   you may not use this file except in compliance with the License.  *   You may obtain a copy of the License at   *  *   http://www.apache.org/licenses/LICENSE-2.0 *  *   Unless required by applicable law or agreed to in writing, software *   distributed under the License is distributed on an "AS IS" BASIS, *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. *   See the License for the specific language governing permissions and *   limitations under the License. *  */package jgantt.view.tree;import java.awt.Point;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.util.Enumeration;import javax.swing.JCheckBoxMenuItem;import javax.swing.JMenuItem;import javax.swing.JPopupMenu;/** * TreeMouseHandler * Detecta el evento de pressed para asignar el foco de la tabla *  * <p>$Date: 2004/04/23 00:04:31 $</p>  * @version $Revision: 1.1 $ * @author Carlos Silva */public class TreeMouseHandler implements MouseListener {	TaskTree taskTree;	/**	 * 	 */	public TreeMouseHandler(TaskTree tree) {		super();		taskTree = tree;	}	/**	 * @see java.awt.event.MouseListener#mouseClicked(java.awt.event.MouseEvent)	 */	public void mouseClicked(MouseEvent arg0) {	}	public void mousePressed(MouseEvent ev) {		if ((ev.getModifiers() & MouseEvent.BUTTON1_MASK) > 0) {			taskTree.setFocus(ev.getX(), ev.getY());		}		if ((ev.getModifiers() & MouseEvent.BUTTON3_MASK) > 0) {			if (ev.getPoint().y < taskTree.treeOptions.headerHeight) {				popupColumnMenu(ev.getPoint());			}		}	}	public void mouseReleased(MouseEvent arg0) {	}	public void mouseEntered(MouseEvent arg0) {	}	public void mouseExited(MouseEvent arg0) {	}	void popupColumnMenu(Point p) {		JPopupMenu popup = null;		popup = new JPopupMenu("Columns...");		ActionListener al = new ColumnActionListener(p);		// incluir nombres de columnas		for (Enumeration e = taskTree.allColumns.elements(); e.hasMoreElements();) {			Column c = (Column) e.nextElement();			JCheckBoxMenuItem mi = new JCheckBoxMenuItem(c.getName());			mi.setSelected(taskTree.columns.contains(c));			mi.addActionListener(al);			popup.add(mi);		}		taskTree.add(popup);		popup.show(taskTree, p.x, p.y);	}	class ColumnActionListener implements ActionListener {		int clickedColumnIndex = 0;		public ColumnActionListener(Point p) {			int xp = 0;			clickedColumnIndex = taskTree.columns.size();			for (int i = 0; i < taskTree.columns.size(); i++) {				Column c = (Column) taskTree.columns.get(i);				xp += c.getLength();				if (p.x < xp) {					clickedColumnIndex = i;					break;				}			}		}		public void actionPerformed(ActionEvent ev) {			String ac = ev.getActionCommand();			JMenuItem mi = (JMenuItem) ev.getSource();			if (mi.isSelected()) { // Agregar				for (Enumeration e = taskTree.allColumns.elements();					e.hasMoreElements();					) {					Column c = (Column) e.nextElement();					if (c.getName().equals(ac)) {						taskTree.columns.insertElementAt(c, clickedColumnIndex);						taskTree.recalcWidths = true;						break;					}				}			} else { // Quitar				for (int i = 0; i < taskTree.columns.size(); i++) {					Column c = (Column) taskTree.columns.get(i);					if (c.getName().equals(ac)) {						taskTree.columns.remove(c);						break;					}				}			}			taskTree.treeOptions.columns.clear();			for (int i = 0; i < taskTree.columns.size(); i++) {				Column c = (Column) taskTree.columns.get(i);				taskTree.treeOptions.columns.add(c.getProperty());			}			taskTree.repaint();		}	}}

⌨️ 快捷键说明

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