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

📄 paintcellrenderer.java

📁 It is all about project scheduling. GanttProject is a tool for creating a project schedule by means
💻 JAVA
字号:
package net.sourceforge.ganttproject.shape;/* *@author Etienne L'kenfack (etienne.lkenfack@itcogita.com) */import java.awt.Color;import java.awt.Component;import java.awt.Dimension;import java.awt.Graphics;import java.awt.Graphics2D;import java.awt.Insets;import java.awt.Paint;import java.awt.Rectangle;import javax.swing.JList;import javax.swing.JPanel;import javax.swing.ListCellRenderer;import javax.swing.border.Border;import javax.swing.border.LineBorder;public class PaintCellRenderer extends JPanel implements ListCellRenderer {    protected Border normalBorder = new LineBorder(Color.white, 2);    protected Border selectBorder = new LineBorder(Color.black, 2);    protected Border focusBorder = new LineBorder(Color.blue, 2);    protected Paint paint;    public PaintCellRenderer() {        setPreferredSize(new Dimension(70, 16));    }    public void paintComponent(Graphics gc) {        Graphics2D g = (Graphics2D) gc;        int w = getSize().width;        int h = getSize().height;        Insets insets = getInsets();        Rectangle rect = new Rectangle(insets.left, insets.top, w                - (insets.left + insets.right), h                - (insets.top + insets.bottom));        g.setPaint(paint);        g.fill(rect);    }    public Component getListCellRendererComponent(JList list, Object value,            int index, boolean isSelected, boolean hasFocus) {        Border border = isSelected ? selectBorder : normalBorder;        setBorder(hasFocus ? focusBorder : border);        if (value instanceof Paint) {            paint = (Paint) value;        }        return this;    }}

⌨️ 快捷键说明

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