- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JColorChooser
-
- All Implemented Interfaces:
-
ImageObserver,MenuContainer,Serializable,Accessible
@JavaBean(defaultProperty="UI", description="A component that supports selecting a Color.") public class JColorChooser extends JComponent implements Accessible
JColorChooser提供了一个设计用于允许用户操纵和选择颜色的控件窗格。 有关使用颜色选择器的信息,请参阅“Java教程”中的“ How to Use Color Choosers ”一节。这个类提供了三个级别的API:
- 一种静态方便方法,显示模态颜色选择对话框并返回用户选择的颜色。
- 用于创建颜色选择器对话框的静态方便方法,其中当用户按下其中一个对话框按钮时,可以指定要调用的颜色选择器
ActionListeners。 - 直接(在任何容器内)创建
JColorChooser窗格实例的JColorChooser。 可以添加PropertyChange监听器,以检测当前“颜色”属性何时更改。
警告: Swing不是线程安全的。 有关更多信息,请参阅Swing's Threading Policy 。
警告:此类的序列化对象与将来的Swing版本不兼容。 当前的序列化支持适用于运行相同版本的Swing的应用程序之间的短期存储或RMI。 从1.4开始,支持所有JavaBeans的长期存储已被添加到
java.beans包中。 请参阅XMLEncoder。- 从以下版本开始:
- 1.2
- 另请参见:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 protected classJColorChooser.AccessibleJColorChooser该类为JColorChooser类实现可访问性支持。-
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
-
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field 描述 protected AccessibleContextaccessibleContext可访问的上下文。static StringCHOOSER_PANELS_PROPERTYchooserPanel数组属性名称。static StringPREVIEW_PANEL_PROPERTY预览面板属性名称。static StringSELECTION_MODEL_PROPERTY选择模型属性名称。-
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
-
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
构造方法摘要
构造方法 Constructor 描述 JColorChooser()创建一个初始颜色为白色的颜色选择器窗格。JColorChooser(Color initialColor)创建具有指定初始颜色的颜色选择器窗格。JColorChooser(ColorSelectionModel model)创建具有指定的颜色选择器窗格ColorSelectionModel。
-
方法摘要
所有方法 静态方法 接口方法 具体的方法 Modifier and Type 方法 描述 voidaddChooserPanel(AbstractColorChooserPanel panel)在颜色选择器中添加一个颜色选择器面板。static JDialogcreateDialog(Component c, String title, boolean modal, JColorChooser chooserPane, ActionListener okListener, ActionListener cancelListener)创建并返回一个包含指定的ColorChooser窗格的新对话框以及“确定”,“取消”和“重置”按钮。AccessibleContextgetAccessibleContext()获取与此JColorChooser关联的AccessibleContext。AbstractColorChooserPanel[]getChooserPanels()返回指定的颜色面板。ColorgetColor()从颜色选择器获取当前颜色值。booleangetDragEnabled()获取dragEnabled属性的值。JComponentgetPreviewPanel()返回显示所选颜色的预览面板。ColorSelectionModelgetSelectionModel()返回处理颜色选择的数据模型。ColorChooserUIgetUI()返回渲染此组件的L&F对象。StringgetUIClassID()返回呈现此组件的L&F类的名称。protected StringparamString()返回此JColorChooser的字符串表示JColorChooser。AbstractColorChooserPanelremoveChooserPanel(AbstractColorChooserPanel panel)删除指定的颜色面板。voidsetChooserPanels(AbstractColorChooserPanel[] panels)指定用于选择颜色值的颜色面板。voidsetColor(int c)将颜色选择器的当前颜色设置为指定的颜色。voidsetColor(int r, int g, int b)将颜色选择器的当前颜色设置为指定的RGB颜色。voidsetColor(Color color)将颜色选择器的当前颜色设置为指定的颜色。voidsetDragEnabled(boolean b)设置dragEnabled属性,该属性必须为true以启用此组件上的自动拖放处理(第一部分拖放)。voidsetPreviewPanel(JComponent preview)设置当前预览面板。voidsetSelectionModel(ColorSelectionModel newModel)设置包含所选颜色的模型。voidsetUI(ColorChooserUI ui)设置渲染此组件的L&F对象。static ColorshowDialog(Component component, String title, Color initialColor)显示模态颜色选择器对话框并阻塞,直到对话框被隐藏。static ColorshowDialog(Component component, String title, Color initialColor, boolean colorTransparencySelectionEnabled)显示模态颜色选择器对话框并阻塞,直到对话框被隐藏。voidupdateUI()来自UIManager通知表明L&F已经改变了。-
Methods inherited from class 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Methods inherited from class 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, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class 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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, 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
-
-
-
-
字段详细信息
-
SELECTION_MODEL_PROPERTY
public static final String SELECTION_MODEL_PROPERTY
选择模型属性名称。- 另请参见:
- Constant Field Values
-
PREVIEW_PANEL_PROPERTY
public static final String PREVIEW_PANEL_PROPERTY
预览面板属性名称。- 另请参见:
- Constant Field Values
-
CHOOSER_PANELS_PROPERTY
public static final String CHOOSER_PANELS_PROPERTY
chooserPanel数组属性名称。- 另请参见:
- Constant Field Values
-
accessibleContext
protected AccessibleContext accessibleContext
可访问的上下文。
-
-
构造方法详细信息
-
JColorChooser
public JColorChooser()
创建一个初始颜色为白色的颜色选择器窗格。
-
JColorChooser
public JColorChooser(Color initialColor)
创建具有指定初始颜色的颜色选择器窗格。- 参数
-
initialColor- 在选择器中设置的初始颜色
-
JColorChooser
public JColorChooser(ColorSelectionModel model)
创建具有指定的颜色选择器窗格ColorSelectionModel。- 参数
-
model- 要使用的ColorSelectionModel
-
-
方法详细信息
-
showDialog
public static Color showDialog(Component component, String title, Color initialColor) throws HeadlessException
显示模态颜色选择器对话框并阻塞,直到对话框被隐藏。 如果用户按“确定”按钮,则此方法将隐藏/处理对话框并返回所选颜色。 如果用户按“取消”按钮或关闭对话框,而不按“确定”,则此方法隐藏/处理对话框并返回null。- 参数
-
component- 对话框的父母Component -
title- 包含对话框标题的字符串 -
initialColor- 显示颜色选择器时的初始颜色设置 - 结果
-
所选颜色或
null如果用户选择退出 - 异常
-
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回true。 - 另请参见:
-
GraphicsEnvironment.isHeadless()
-
showDialog
public static Color showDialog(Component component, String title, Color initialColor, boolean colorTransparencySelectionEnabled) throws HeadlessException
显示模态颜色选择器对话框并阻塞,直到对话框被隐藏。 如果用户按“确定”按钮,则此方法将隐藏/处理对话框并返回所选颜色。 如果用户按“取消”按钮或关闭对话框,而不按“确定”,则此方法隐藏/处理对话框并返回null。- 参数
-
component- 对话框的父级Component -
title- 包含对话框标题的字符串 -
initialColor- 显示颜色选择器时的初始颜色设置 -
colorTransparencySelectionEnabled- 如果可以选择颜色的透明度,colorTransparencySelectionEnabledtrue - 结果
-
所选颜色或
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窗格的新对话框以及“确定”,“取消”和“重置”按钮。 如果按下“确定”或“取消”按钮,对话框将自动隐藏(但不处理)。 如果按下“复位”按钮,颜色选择器的颜色将被重置为在对话框上调用最后一次show设置的颜色,对话框将保持显示。- 参数
-
c- 对话框的父组件 -
title- 对话框的标题 -
modal- 一个布尔值。 当为真时,程序的其余部分不活动,直到对话框关闭。 -
chooserPane- 要放置在对话框内的颜色选择器 -
okListener- 按“OK”时调用ActionListener -
cancelListener- 按“取消”时调用ActionListener - 结果
- 包含颜色选择器窗格的新对话框
- 异常
-
HeadlessException- 如果GraphicsEnvironment.isHeadless()返回true。 - 另请参见:
-
GraphicsEnvironment.isHeadless()
-
getUI
public ColorChooserUI getUI()
返回渲染此组件的L&F对象。- 重写:
-
getUI在JComponent - 结果
-
提供此组件的
ColorChooserUI对象
-
setUI
@BeanProperty(hidden=true, description="The UI object that implements the color chooser\'s LookAndFeel.") public void setUI(ColorChooserUI ui)
设置渲染此组件的L&F对象。- 参数
-
ui-ColorChooserUIL&F对象 - 另请参见:
-
UIDefaults.getUI(javax.swing.JComponent)
-
updateUI
public void updateUI()
来自UIManager的L&F发生变化的通知。 用UIManager替换最新版本的当前UI对象。- 重写:
-
updateUI在JComponent - 另请参见:
-
JComponent.updateUI()
-
getUIClassID
@BeanProperty(bound=false) public String getUIClassID()
返回呈现此组件的L&F类的名称。- 重写:
-
getUIClassID在JComponent - 结果
- 字符串“ColorChooserUI”
- 另请参见:
-
JComponent.getUIClassID(),UIDefaults.getUI(javax.swing.JComponent)
-
getColor
public Color getColor()
从颜色选择器获取当前颜色值。 默认情况下,它代表模型。- 结果
- 颜色选择器的当前颜色值
-
setColor
@BeanProperty(bound=false, description="The current color the chooser is to display.") 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之间,包括0和255之间。- 参数
-
r- 一个int指定红色的数量 -
g- 一个指定绿色量的int -
b- 一个指定蓝色数量的int - 异常
-
IllegalArgumentException- 如果r,g,b值超出范围 - 另请参见:
-
Color
-
setColor
public void setColor(int c)
将颜色选择器的当前颜色设置为指定的颜色。- 参数
-
c- 一个整数值,用于设置低位8位指定蓝色值的选择器中的当前颜色,接下来的8位指定绿色值,高8位指定红色值。
-
setDragEnabled
@BeanProperty(bound=false, description="Determines whether automatic drag handling is enabled.") public void setDragEnabled(boolean b)
设置dragEnabled属性,该属性必须为true以启用此组件上的自动拖放处理(第一部分拖放)。transferHandler属性需要设置为非null值来拖动才能执行任何操作。dragEnabled属性的默认值为false。当启用自动拖动处理时,当用户在预览面板上按下鼠标按钮时,大多数外观和感觉开始拖放操作。 有些外观和感觉可能不支持自动拖放; 他们将忽略此属性。 您可以解决这样的外观和修改组件以直接调用感觉
exportAsDrag一个方法TransferHandler。- 参数
-
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
@BeanProperty(hidden=true, description="The UI component which displays the current color.") public void setPreviewPanel(JComponent preview)
设置当前预览面板。 这将触发一个PropertyChangeEvent名为“previewPanel”的属性。- 参数
-
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)
删除指定的颜色面板。- 参数
-
panel- 指定要删除的面板的字符串 - 结果
- 彩色面板
- 异常
-
IllegalArgumentException- 如果面板不在已知选择器面板的列表中
-
setChooserPanels
@BeanProperty(hidden=true, description="An array of different chooser types.") public void setChooserPanels(AbstractColorChooserPanel[] panels)
指定用于选择颜色值的颜色面板。- 参数
-
panels- 一个AbstractColorChooserPanel对象的数组
-
getChooserPanels
public AbstractColorChooserPanel[] getChooserPanels()
返回指定的颜色面板。- 结果
-
一组
AbstractColorChooserPanel对象
-
getSelectionModel
public ColorSelectionModel getSelectionModel()
返回处理颜色选择的数据模型。- 结果
-
一个
ColorSelectionModel对象
-
setSelectionModel
@BeanProperty(hidden=true, description="The model which contains the currently selected color.") public void setSelectionModel(ColorSelectionModel newModel)
设置包含所选颜色的模型。- 参数
-
newModel- 新的ColorSelectionModel对象
-
paramString
protected String paramString()
返回此JColorChooser的字符串表示JColorChooser。 该方法仅用于调试目的,并且返回的字符串的内容和格式可能因实现而异。 返回的字符串可能为空,但可能不是null。- 重写:
-
paramString在JComponent - 结果
-
这个
JColorChooser的字符串表示JColorChooser
-
getAccessibleContext
@BeanProperty(bound=false) public AccessibleContext getAccessibleContext()
获取与此JColorChooser关联的AccessibleContext。 对于颜色选择器,AccessibleContext采用AccessibleJColorChooser的形式。 如有必要,将创建一个新的AccessibleJColorChooser实例。- Specified by:
-
getAccessibleContext在接口Accessible - 重写:
-
getAccessibleContext在Component - 结果
- an AccessibleJColorChooser that serves as the AccessibleContext of this JColorChooser
-
-