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

📄 ganttdiagram.java

📁 一个用于安排项目时间表的Java程序
💻 JAVA
字号:
/* *  $Id: GanttDiagram.java,v 1.1.1.1 2001/03/20 22:17:38 mastermitch Exp $  * *  2001 (C) by Christian Garbs <mitch@uni.de> * *  Licensed under GNU GPL (see COPYING for details) * */package de.cgarbs.apps.jprojecttimer;import java.awt.Color;import java.awt.Component;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.print.PageFormat;import java.awt.print.Printable;import java.util.Enumeration;public class GanttDiagram extends Component implements Printable{    Project project;    GanttDiagram(Project project)    {	this.project = project;    }    public void refresh()    {	repaint();    }    public void paint(Graphics graph)    {	Graphics2D g = (Graphics2D) graph;	TaskList tasks = project.getTaskList();	int textWidth = 70;	int headerHeight = 30;	int step=5;	g.setColor(Color.white);	g.fillRect(0, 0, getSize().width+1, getSize().height+1);	if (tasks.size() > 0) {	    tasks.recalculate();	    int cols = tasks.projectEnd();	    // Header	    g.setColor(Color.blue);	    g.drawString(Resource.get("task"), 5, headerHeight-3);	    g.drawString("1", textWidth + 3, headerHeight - 3);	    for (int col = -1; col < cols; col+=3) {		if (col > 0) {		    g.drawString(Integer.toString(col+1), (int) (textWidth + (col * (getSize().width - textWidth)) / cols + 3), headerHeight - 3);		}	    }	    	    // Tasks	    for (int row = 0; row < tasks.size(); row++) {		((Task) tasks.elementAt(row)).paint(g,						    0,						    getSize().width,						    (row * (getSize().height - headerHeight)) / tasks.size() + headerHeight,						    (getSize().height - headerHeight) / tasks.size(),						    cols,						    textWidth						    );	    }	}    }    public int print(Graphics g, PageFormat pageFormat, int page)    {	if (page != 0) {	    return Printable.NO_SUCH_PAGE;	}	paint(g);	return Printable.PAGE_EXISTS;    }}

⌨️ 快捷键说明

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