📄 zcolorpicker.java
字号:
/* * Copyright 2002 EZCell , Inc. All rights reserved. * Version 1.0. * Author W.John */package ezcell;import java.awt.Color;import java.awt.Component;import java.awt.Dimension;import java.awt.Graphics;import java.awt.Image;import javax.swing.ImageIcon;import javax.swing.JComboBox;import javax.swing.JList;import javax.swing.JPanel;import javax.swing.ListCellRenderer;import javax.swing.UIManager;import javax.swing.border.CompoundBorder;import javax.swing.border.LineBorder;import javax.swing.border.MatteBorder;/** * <p>Title: </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2001</p> * <p>Company: </p> * @author unascribed * @version 1.0 */public class ZColorPicker extends JComboBox { static ImageIcon icon = new ImageIcon("images/thincross.gif"); private Image image; private int[] values = new int[] { 0, 128, 192, 255 }; public ZColorPicker() { init(); setRenderer(new _Renderer()); } public ZColorPicker(Image image) { this(); this.image = image; setMaximumSize(new Dimension(90,40)); } /** * * @return */ Color getColor() { return (Color) getSelectedItem(); } /** */ private void init() { for (int r = 0; r < values.length; r++) { for (int g = 0; g < values.length; g++) { for (int b = 0; b < values.length; b++) { Color c = new Color(values[r], values[g], values[b]); addItem(c); } } } } /** * DOCUMENT ME! * * @version 1.00 * @author W.John */ class _Renderer extends JPanel implements ListCellRenderer { protected Color color = Color.black; protected Color focusColor = (Color) UIManager.get("List.selectionBackground"); protected Color nonFocusColor = Color.white; protected boolean selected; /** * * @param list * @param obj * @param row * @param sel * @param hasFocus * * @return */ public Component getListCellRendererComponent(JList list, Object obj, int row, boolean sel, boolean hasFocus) { if (hasFocus || sel) { setBorder(new CompoundBorder(new MatteBorder(2, 2, 2, 2, focusColor), new LineBorder(Color.black))); } else { setBorder(new CompoundBorder(new MatteBorder(2, 2, 2, 2, nonFocusColor), new LineBorder(Color.black))); } if (obj instanceof Color) { color = (Color) obj; } this.setPreferredSize(new Dimension(60, 11)); selected = row == -1; return this; } /** * * @param g */ public void paintComponent(Graphics g) { setBackground(color); super.paintComponent(g); if (selected && (image != null)) { g.drawImage(image, 2, 2, this); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -