java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JColorChooser
- 所有已实现的接口:
ImageObserver,MenuContainer,Serializable,Accessible
@JavaBean (defaultProperty ="UI", description ="A component that supports selecting a Color.") public class JColorChooser extends JComponent implements Accessible
JColorChooser 提供了一个控件面板,旨在允许用户操纵和选择颜色。有关使用颜色选择器的信息,请参阅 如何使用颜色选择器,The Java Tutorial 中的一个部分。
该类提供了三个级别的 API:
- 显示模式颜色选择器对话框并返回用户选择的颜色的静态便捷方法。
- 一种用于创建颜色选择器对话框的静态便捷方法,其中
ActionListeners可以指定为在用户按下其中一个对话框按钮时调用。 - 直接(在任何容器内)创建
JColorChooser窗格实例的能力。可以添加PropertyChange监听器以检测当前“颜色”属性何时更改。
Warning: Swing 不是线程安全的。有关详细信息,请参阅 Swing 的线程策略。
Warning: 此类的序列化对象将与未来的 Swing 版本不兼容。当前的序列化支持适用于运行相同版本 Swing 的应用程序之间的短期存储或 RMI。从 1.4 开始,对所有 JavaBeans 的长期存储的支持已添加到 java.beans 包中。请参阅 XMLEncoder 。
- 自从:
- 1.2
-
内部类总结
内部类在类 javax.swing.JComponent 中声明的嵌套类/接口
JComponent.AccessibleJComponent在类 java.awt.Container 中声明的嵌套类/接口
Container.AccessibleAWTContainer -
字段摘要
字段修饰符和类型Field描述protected AccessibleContext可访问的上下文。static final StringchooserPanel 数组属性名称。static final String预览面板属性名称。static final String选择模型属性名称。在类 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(Color initialColor) 创建具有指定初始颜色的颜色选择器窗格。JColorChooser(ColorSelectionModel model) 使用指定的ColorSelectionModel创建颜色选择器窗格。 -
方法总结
修饰符和类型方法描述void向颜色选择器添加颜色选择器面板。static JDialogcreateDialog(Component c, String title, boolean modal, JColorChooser chooserPane, ActionListener okListener, ActionListener cancelListener) 创建并返回一个新对话框,其中包含指定的ColorChooser窗格以及“确定”、“取消”和“重置”按钮。获取与此 JColorChooser 关联的 AccessibleContext。返回指定的颜色面板。getColor()从颜色选择器获取当前颜色值。boolean获取dragEnabled属性的值。返回显示所选颜色的预览面板。返回处理颜色选择的数据模型。getUI()返回呈现此组件的 L&F 对象。返回呈现此组件的 L&F 类的名称。protected String返回此JColorChooser的字符串表示形式删除指定的颜色面板。voidsetChooserPanels(AbstractColorChooserPanel[] panels) 指定用于选择颜色值的颜色面板。voidsetColor(int c) 将颜色选择器的当前颜色设置为指定颜色。voidsetColor(int r, int g, int b) 将颜色选择器的当前颜色设置为指定的 RGB 颜色。void将颜色选择器的当前颜色设置为指定颜色。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 已更改。在类 javax.swing.JComponent 中声明的方法
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, 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在类 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在类 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, 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
-
字段详细信息
-
SELECTION_MODEL_PROPERTY
选择模型属性名称。- 参见:
-
PREVIEW_PANEL_PROPERTY
预览面板属性名称。- 参见:
-
CHOOSER_PANELS_PROPERTY
chooserPanel 数组属性名称。- 参见:
-
accessibleContext
可访问的上下文。
-
-
构造方法详细信息
-
JColorChooser
public JColorChooser()创建一个初始颜色为白色的颜色选择器窗格。 -
JColorChooser
创建具有指定初始颜色的颜色选择器窗格。- 参数:
initialColor- 选择器中设置的初始颜色
-
JColorChooser
使用指定的ColorSelectionModel创建颜色选择器窗格。- 参数:
model- 要使用的ColorSelectionModel
-
-
方法详情
-
showDialog
public static Color showDialog(Component component, String title, Color initialColor) throws HeadlessException 显示模态颜色选择器对话框并阻塞,直到对话框被隐藏。如果用户按下“确定”按钮,则此方法隐藏/处理对话框并返回所选颜色。如果用户按下“取消”按钮或关闭对话框而不按下“确定”,则此方法隐藏/处理对话框并返回null。- 参数:
component- 对话框的父级Componenttitle- 包含对话框标题的字符串initialColor- 显示颜色选择器时设置的初始颜色- 返回:
-
所选颜色或
null(如果用户选择退出) - 抛出:
HeadlessException- 如果 GraphicsEnvironment.isHeadless() 返回 true。- 参见:
-
showDialog
public static Color showDialog(Component component, String title, Color initialColor, boolean colorTransparencySelectionEnabled) throws HeadlessException 显示模态颜色选择器对话框并阻塞,直到对话框被隐藏。如果用户按下“确定”按钮,则此方法隐藏/处理对话框并返回所选颜色。如果用户按下“取消”按钮或关闭对话框而不按下“确定”,则此方法隐藏/处理对话框并返回null。- 参数:
component- 对话框的父级Componenttitle- 包含对话框标题的字符串initialColor- 显示颜色选择器时设置的初始颜色colorTransparencySelectionEnabled- 如果可以选择颜色的透明度则为真- 返回:
-
所选颜色或
null(如果用户选择退出) - 抛出:
HeadlessException- 如果 GraphicsEnvironment.isHeadless() 返回 true。- 参见:
-
createDialog
public static JDialog createDialog(Component c, String title, boolean modal, JColorChooser chooserPane, ActionListener okListener, ActionListener cancelListener) throws HeadlessException 创建并返回一个新对话框,其中包含指定的ColorChooser窗格以及“确定”、“取消”和“重置”按钮。如果按下“确定”或“取消”按钮,对话框会自动隐藏(但不会被释放)。如果按下“重置”按钮,颜色选择器的颜色将重置为上次在对话框上调用show时设置的颜色,并且对话框将继续显示。- 参数:
c- 对话框的父组件title- 对话框的标题modal- boolean。当为真时,程序的其余部分在对话框关闭之前处于非活动状态。chooserPane- 要放置在对话框内的颜色选择器okListener- 按下“确定”时调用的 ActionListenercancelListener- 按下“取消”时调用的 ActionListener- 返回:
- 包含颜色选择器窗格的新对话框
- 抛出:
HeadlessException- 如果 GraphicsEnvironment.isHeadless() 返回 true。- 参见:
-
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 对象- 参见:
-
updateUI
public void updateUI()来自UIManager的通知,L&F 已更改。用UIManager的最新版本替换当前 UI 对象。- 重写:
updateUI在类JComponent中- 参见:
-
getUIClassID
返回呈现此组件的 L&F 类的名称。- 重写:
getUIClassID在类JComponent中- 返回:
- 字符串“ColorChooserUI”
- 参见:
-
getColor
从颜色选择器获取当前颜色值。默认情况下,这委托给模型。- 返回:
- 颜色选择器的当前颜色值
-
setColor
@BeanProperty (bound =false, description ="The current color the chooser is to display.") public void setColor(Color color) 将颜色选择器的当前颜色设置为指定颜色。ColorSelectionModel将触发ChangeEvent- 参数:
color- 要在颜色选择器中设置的颜色- 参见:
-
setColor
public void setColor(int r, int g, int b) 将颜色选择器的当前颜色设置为指定的 RGB 颜色。请注意,红色、绿色和蓝色的值应介于 0 和 255 之间,包括 0 和 255。- 参数:
r- 指定红色数量的整数g- 指定绿色数量的整数b- 指定蓝色数量的整数- 抛出:
IllegalArgumentException- 如果 r、g、b 值超出范围- 参见:
-
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。启用自动拖动处理后,大多数外观会在用户在预览面板上按下鼠标按钮时开始拖放操作。有些外观可能不支持自动拖放;他们将忽略此属性。您可以通过修改组件以直接调用
TransferHandler的exportAsDrag方法来解决此类外观问题。- 参数:
b- 将dragEnabled属性设置为的值- 抛出:
HeadlessException- 如果b是true并且GraphicsEnvironment.isHeadless()返回true- 自从:
- 1.4
- 参见:
-
getDragEnabled
public boolean getDragEnabled()获取dragEnabled属性的值。- 返回:
dragEnabled属性的值- 自从:
- 1.4
- 参见:
-
setPreviewPanel
@BeanProperty (hidden =true, description ="The UI component which displays the current color.") public void setPreviewPanel(JComponent preview) 设置当前预览面板。这将为名为“previewPanel”的属性触发PropertyChangeEvent。- 参数:
preview- 显示当前颜色的JComponent- 参见:
-
getPreviewPanel
返回显示所选颜色的预览面板。- 返回:
-
一个
JComponent对象——预览面板
-
addChooserPanel
向颜色选择器添加颜色选择器面板。- 参数:
panel- 要添加的AbstractColorChooserPanel
-
removeChooserPanel
删除指定的颜色面板。- 参数:
panel- 一个字符串,指定要删除的面板- 返回:
- 颜色面板
- 抛出:
IllegalArgumentException- 如果面板不在已知选择器面板列表中
-
setChooserPanels
@BeanProperty (hidden =true, description ="An array of different chooser types.") public void setChooserPanels(AbstractColorChooserPanel [] panels) 指定用于选择颜色值的颜色面板。- 参数:
panels-AbstractColorChooserPanel对象数组
-
getChooserPanels
返回指定的颜色面板。- 返回:
AbstractColorChooserPanel对象数组
-
getSelectionModel
返回处理颜色选择的数据模型。- 返回:
-
一个
ColorSelectionModel对象
-
setSelectionModel
@BeanProperty (hidden =true, description ="The model which contains the currently selected color.") public void setSelectionModel(ColorSelectionModel newModel) 设置包含所选颜色的模型。- 参数:
newModel- 新的ColorSelectionModel对象
-
paramString
返回此JColorChooser的字符串表示形式。此方法仅用于调试目的,返回字符串的内容和格式可能因实现而异。返回的字符串可能为空,但可能不是null。- 重写:
paramString在类JComponent中- 返回:
-
这个
JColorChooser的字符串表示
-
getAccessibleContext
获取与此 JColorChooser 关联的 AccessibleContext。对于颜色选择器,AccessibleContext 采用 AccessibleJColorChooser 的形式。如有必要,将创建一个新的 AccessibleJColorChooser 实例。- 指定者:
getAccessibleContext在接口Accessible中- 重写:
getAccessibleContext在类Component中- 返回:
- 作为此 JColorChooser 的 AccessibleContext 的 AccessibleJColorChooser
-