JavaTM Platform
Standard Ed. 6

javax.swing
�� JColorChooser

java.lang.Object
  �̳��� java.awt.Component
      �̳��� java.awt.Container
          �̳��� javax.swing.JComponent
              �̳��� javax.swing.JColorChooser
������ʵ�ֵĽӿڣ�
ImageObserver, MenuContainer, Serializable, Accessible

public class JColorChooser
extends JComponent
implements Accessible

JColorChooser �ṩһ�����������û�������ѡ����ɫ�Ŀ����������й�ʹ����ɫѡȡ������Ϣ������� The Java Tutorial �е� How to Use Color Choosers һ�ڡ�

�����ṩ��������� API��

  1. ��ʾ��ģʽ��ɫѡȡ���Ի��򲢷����û���ѡ��ɫ�ľ�̬��ݷ�����
  2. ������ɫѡȡ���Ի���ľ�̬��ݷ���������ָ�����û���������һ���Ի���ťʱҪ���õ� ActionListener��
  3. ��ֱ�Ӵ��� JColorChooser ����ʵ�������κ������У����������� PropertyChange �������Լ�⵱ǰ“��ɫ”���Ժ�ʱ���ġ�

���棺 Swing �����̰߳�ȫ�ġ��йظ�����Ϣ������� Swing's Threading Policy��

���棺��������л��������Ժ�� Swing �汾�����ݡ���ǰ���л�֧�������ڶ��ڴ洢������������������ͬ Swing �汾��Ӧ�ó���֮����� RMI��Remote Method Invocation��Զ�̷������ã����� 1.4 �汾��ʼ������ java.beans ����������֧������ JavaBeansTM ���ڴ洢�Ĺ��ܡ���μ� XMLEncoder��


Ƕ����ժҪ
protected  class JColorChooser.AccessibleJColorChooser
          ����ʵ�ֶ� JColorChooser ��Ŀɷ�����֧�֡�
 
���� javax.swing.JComponent �̳е�Ƕ����/�ӿ�
JComponent.AccessibleJComponent
 
���� java.awt.Container �̳е�Ƕ����/�ӿ�
Container.AccessibleAWTContainer
 
���� java.awt.Component �̳е�Ƕ����/�ӿ�
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
�ֶ�ժҪ
protected  AccessibleContext accessibleContext
           
static String CHOOSER_PANELS_PROPERTY
          chooserPanel ������������
static String PREVIEW_PANEL_PROPERTY
          Ԥ�������������
static String SELECTION_MODEL_PROPERTY
          ѡ��ģ����������
 
���� javax.swing.JComponent �̳е��ֶ�
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
���� java.awt.Component �̳е��ֶ�
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
�ӽӿ� java.awt.image.ImageObserver �̳е��ֶ�
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
���췽��ժҪ
JColorChooser()
          ������ʼ��ɫΪ��ɫ����ɫѡȡ������
JColorChooser(Color initialColor)
          ��������ָ����ʼ��ɫ����ɫѡȡ������
JColorChooser(ColorSelectionModel model)
          ��������ָ�� ColorSelectionModel ��ɫѡȡ������
 
����ժҪ
 void addChooserPanel(AbstractColorChooserPanel panel)
          ����ɫѡȡ��������ӵ���ɫѡȡ����
static JDialog createDialog(Component c, String title, boolean modal, JColorChooser chooserPane, ActionListener okListener, ActionListener cancelListener)
          ���������ذ���ָ�� ColorChooser ���� "OK"��"Cancel" �� "Reset" ��ť���¶Ի���
 AccessibleContext getAccessibleContext()
          ��ȡ��� JColorChooser ������ AccessibleContext��
 AbstractColorChooserPanel[] getChooserPanels()
          ����ָ������ɫ��塣
 Color getColor()
          ��ȡ��ɫѡȡ���ĵ�ǰ��ɫֵ��
 boolean getDragEnabled()
          ��ȡ dragEnabled ���Ե�ֵ��
 JComponent getPreviewPanel()
          ������ʾѡȡ��ɫ��Ԥ����塣
 ColorSelectionModel getSelectionModel()
          ���ش�����ɫѡ�������ģ�͡�
 ColorChooserUI getUI()
          ���س��ִ������ L&F ����
 String getUIClassID()
          ���س��ִ������ L&F ������ơ�
protected  String paramString()
          ���ش� JColorChooser ���ַ�����ʾ��ʽ��
 AbstractColorChooserPanel removeChooserPanel(AbstractColorChooserPanel panel)
          �Ƴ�ָ���� Color Panel��
 void setChooserPanels(AbstractColorChooserPanel[] panels)
          ָ������ѡȡ��ɫֵ�� Color Panel��
 void setColor(Color color)
          ����ɫѡȡ���ĵ�ǰ��ɫ����Ϊָ����ɫ��
 void setColor(int c)
          ����ɫѡȡ���ĵ�ǰ��ɫ����Ϊָ����ɫ��
 void setColor(int r, int g, int b)
          ����ɫѡȡ���ĵ�ǰ��ɫ����Ϊָ���� RGB ��ɫ��
 void setDragEnabled(boolean b)
          ���� dragEnabled ���ԣ������Ա���Ϊ true �������öԴ�������Զ��϶��������ϷŲ����ĵ�һ���֣���
 void setPreviewPanel(JComponent preview)
          ���õ�ǰԤ����塣
 void setSelectionModel(ColorSelectionModel newModel)
          ���ð�����ѡ��ɫ��ģ�͡�
 void setUI(ColorChooserUI ui)
          ���ó��ִ������ L&F ����
static Color showDialog(Component component, String title, Color initialColor)
          ��ʾ��ģʽ����ɫѡȡ���������ضԻ���֮ǰһֱ������
 void updateUI()
          UIManager �����Ĺ��� L&F �Ѹ��ĵ�֪ͨ��
 
���� javax.swing.JComponent �̳еķ���
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
���� java.awt.Container �̳еķ���
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
���� java.awt.Component �̳еķ���
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
���� java.lang.Object �̳еķ���
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

�ֶ���ϸ��Ϣ

SELECTION_MODEL_PROPERTY

public static final String SELECTION_MODEL_PROPERTY
ѡ��ģ����������

������
�����ֶ�ֵ

PREVIEW_PANEL_PROPERTY

public static final String PREVIEW_PANEL_PROPERTY
Ԥ�������������

������
�����ֶ�ֵ

CHOOSER_PANELS_PROPERTY

public static final String CHOOSER_PANELS_PROPERTY
chooserPanel ������������

������
�����ֶ�ֵ

accessibleContext

protected AccessibleContext accessibleContext
���췽����ϸ��Ϣ

JColorChooser

public JColorChooser()
������ʼ��ɫΪ��ɫ����ɫѡȡ������


JColorChooser

public JColorChooser(Color initialColor)
��������ָ����ʼ��ɫ����ɫѡȡ������

������
initialColor - ѡȡ���еij�ʼ��ɫ����

JColorChooser

public JColorChooser(ColorSelectionModel model)
��������ָ�� ColorSelectionModel ��ɫѡȡ������

������
model - Ҫʹ�õ� ColorSelectionModel
������ϸ��Ϣ

showDialog

public static Color showDialog(Component component,
                               String title,
                               Color initialColor)
                        throws HeadlessException
��ʾ��ģʽ����ɫѡȡ���������ضԻ���֮ǰһֱ����������û����� "OK" ��ť����˷�������/�ͷŶԻ��򲢷�����ѡ��ɫ������û����� "Cancel" ��ť������û�а� "OK" ������¹رնԻ�����˷���������/�ͷŶԻ��򲢷��� null��

������
component - �Ի���ĸ� Component
title - �����Ի������� String
initialColor - ��ʾ��ɫѡȡ��ʱ�ij�ʼ Color ����
���أ�
��ѡ��ɫ������û��˳����򷵻� null
�׳���
HeadlessException - ��� GraphicsEnvironment.isHeadless() ���� true��
������
GraphicsEnvironment.isHeadless()

createDialog

public static JDialog createDialog(Component c,
                                   String title,
                                   boolean modal,
                                   JColorChooser chooserPane,
                                   ActionListener okListener,
                                   ActionListener cancelListener)
                            throws HeadlessException
���������ذ���ָ�� ColorChooser ���� "OK"��"Cancel" �� "Reset" ��ť���¶Ի���������� "OK" �� "Cancel" ��ť����Ի����Զ����أ���δ�ͷţ���������� "Reset" ��ť������ɫѡȡ������ɫ����Ϊ��һ���ڶԻ����ϵ��� show ʱ���õ���ɫ�����ҶԻ�����Ȼ��ʾ��

������
c - �Ի���ĸ����
title - �Ի���ı���
modal - һ�� boolean,Ϊ true ʱ���ڹرնԻ���֮ǰ�������ʣ�ಿ�ֽ�һֱ���ڷǼ���״̬��
chooserPane - Ҫ���ڶԻ����е���ɫѡȡ��
okListener - ���� "OK" ʱ���õ� ActionListener
cancelListener - ���� "Cancel" ʱ���õ� ActionListener
���أ�
������ɫѡȡ��������¶Ի���
�׳���
HeadlessException - ��� GraphicsEnvironment.isHeadless() ���� true��
������
GraphicsEnvironment.isHeadless()

getUI

public ColorChooserUI getUI()
���س��ִ������ L&F ����

���أ�
���ִ������ ColorChooserUI ����

setUI

public void setUI(ColorChooserUI ui)
���ó��ִ������ L&F ����

������
ui - ColorChooserUI L&F ����
������
UIDefaults.getUI(javax.swing.JComponent)

updateUI

public void updateUI()
UIManager �����Ĺ��� L&F �Ѹ��ĵ�֪ͨ������ UIManager ������֪ͨ�滻��ǰ�� UI ����

���ǣ�
�� JComponent �е� updateUI
������
JComponent.updateUI()

getUIClassID

public String getUIClassID()
���س��ִ������ L&F ������ơ�

���ǣ�
�� JComponent �е� getUIClassID
���أ�
�ַ��� "ColorChooserUI"
������
JComponent.getUIClassID(), UIDefaults.getUI(javax.swing.JComponent)

getColor

public Color getColor()
��ȡ��ɫѡȡ���ĵ�ǰ��ɫֵ��Ĭ������£��˲���ί�и�ģ�͡�

���أ�
��ɫѡȡ���ĵ�ǰ��ɫֵ

setColor

public void setColor(Color color)
����ɫѡȡ���ĵ�ǰ��ɫ����Ϊָ����ɫ��ColorSelectionModel ������ ChangeEvent

������
color - Ҫ����ɫѡȡ�������õ���ɫ
������
Container.addPropertyChangeListener(java.beans.PropertyChangeListener)

setColor

public void setColor(int r,
                     int g,
                     int b)
����ɫѡȡ���ĵ�ǰ��ɫ����Ϊָ���� RGB ��ɫ��ע�⣬��ɫ����ɫ����ɫ��ֵӦ�ý������� 0 �� 255 ֮�䣨�������ߣ���

������
r - ָ�� Red ���� int
g - ָ�� Green ���� int
b - ָ�� Blue ���� int
�׳���
IllegalArgumentException - ��� r,g,b ֵ������Χ
������
Color

setColor

public void setColor(int c)
����ɫѡȡ���ĵ�ǰ��ɫ����Ϊָ����ɫ��

������
c - ��ѡȡ�������õ�ǰ��ɫ������ֵ������ 8 ����λָ�� Blue ֵ���������� 8 ��λָ�� Green ֵ�������ϵ� 8 ��λָ�� Red ֵ��

setDragEnabled

public void setDragEnabled(boolean b)
���� dragEnabled ���ԣ������Ա���Ϊ true �������öԴ�������Զ��϶��������ϷŲ����ĵ�һ���֣������뽫 transferHandler ��������Ϊ�� null ֵ���϶�����Ч��dragEnabled ���Ե�Ĭ��ֵΪ false��

�����Զ��϶�����ʱ��ֻҪ�û���Ԥ������ϰ�����갴ť���������۾Ϳ�ʼ�ϷŲ����ˡ���Щ��ۿ��ܲ�֧���Զ��Ϸţ����ǽ����Դ����ԡ�������Щ��ۣ���ͨ���޸������ֱ�ӵ��� TransferHandler �� exportAsDrag ���������������⡣

������
b - ��Ϊ dragEnabled ��������Ŀ���ֵ
�׳���
HeadlessException - ��� b Ϊ true ���� GraphicsEnvironment.isHeadless() ���� true
�����°汾��ʼ��
1.4
������
GraphicsEnvironment.isHeadless(), getDragEnabled(), JComponent.setTransferHandler(javax.swing.TransferHandler), TransferHandler

getDragEnabled

public boolean getDragEnabled()
��ȡ dragEnabled ���Ե�ֵ��

���أ�
dragEnabled ���Ե�ֵ
�����°汾��ʼ��
1.4
������
setDragEnabled(boolean)

setPreviewPanel

public void setPreviewPanel(JComponent preview)
���õ�ǰԤ����塣�˲�����Ϊ��Ϊ "previewPanel" �����Լ��� PropertyChangeEvent��

������
preview - ��ʾ��ǰ��ɫ�� JComponent
������
Container.addPropertyChangeListener(java.beans.PropertyChangeListener)

getPreviewPanel

public JComponent getPreviewPanel()
������ʾѡȡ��ɫ��Ԥ����塣

���أ�
JComponent ���󣬼�Ԥ�����

addChooserPanel

public void addChooserPanel(AbstractColorChooserPanel panel)
����ɫѡȡ��������ӵ���ɫѡȡ����

������
panel - Ҫ���ӵ� AbstractColorChooserPanel

removeChooserPanel

public AbstractColorChooserPanel removeChooserPanel(AbstractColorChooserPanel panel)
�Ƴ�ָ���� Color Panel��

������
panel - Ҫ�Ƴ���ָ�������ַ���
���أ�
��ɫ���
�׳���
IllegalArgumentException - �����岻����֪ѡȡ�������б���

setChooserPanels

public void setChooserPanels(AbstractColorChooserPanel[] panels)
ָ������ѡȡ��ɫֵ�� Color Panel��

������
panels - AbstractColorChooserPanel ���������

getChooserPanels

public AbstractColorChooserPanel[] getChooserPanels()
����ָ������ɫ��塣

���أ�
AbstractColorChooserPanel ���������

getSelectionModel

public ColorSelectionModel getSelectionModel()
���ش�����ɫѡ�������ģ�͡�

���أ�
ColorSelectionModel ����

setSelectionModel

public void setSelectionModel(ColorSelectionModel newModel)
���ð�����ѡ��ɫ��ģ�͡�

������
newModel - �� ColorSelectionModel ����

paramString

protected String paramString()
���ش� JColorChooser ���ַ�����ʾ��ʽ���˷������ڽ��е���ʱʹ�ã����ڸ���ʵ�֣��������ַ��������ݺ͸�ʽ����������ͬ�����ص��ַ�������Ϊ�գ���������Ϊ null��

���ǣ�
�� JComponent �е� paramString
���أ�
�� JColorChooser ���ַ�����ʾ��ʽ

getAccessibleContext

public AccessibleContext getAccessibleContext()
��ȡ��� JColorChooser ������ AccessibleContext��������ɫѡȡ����AccessibleContext ���� AccessibleJColorChooser ����ʽ�����б�Ҫ���ɴ���һ���µ� AccessibleJColorChooser ʵ����

ָ���ߣ�
�ӿ� Accessible �е� getAccessibleContext
���ǣ�
�� JComponent �е� getAccessibleContext
���أ�
�䵱�� JColorChooser �� AccessibleContext �� AccessibleJColorChooser

JavaTM Platform
Standard Ed. 6

�ύ��������
�йظ���� API �ο����ϺͿ�����Ա�ĵ�������� Java SE ������Ա�ĵ������ĵ���������ϸ�ġ����򿪷���Ա���������Լ�������������ﶨ�塢ʹ�ü��ɺ͹�������ʾ����

��Ȩ���� 2007 Sun Microsystems, Inc. ��������Ȩ���� ����������֤��������������ĵ����·ַ�������