Java Swing 如何在我的自定义 ColorChooserPanel 中创建颜色样本?

Posted

技术标签:

【中文标题】Java Swing 如何在我的自定义 ColorChooserPanel 中创建颜色样本?【英文标题】:Java Swing How can I create a Color Swatch in my custom ColorChooserPanel? 【发布时间】:2020-02-22 23:21:52 【问题描述】:

我正在处理我的自定义 ColorChooserPanel 类,但我不知道如何创建 ColorSwatch。

我找到了一个名为 ColorSwatch 或类似名称的类,但它的包是私有的,我无法访问它。

如何确保我有合适的颜色选择器?

【问题讨论】:

你的意思是喜欢this吗? 只有我可以拖动鼠标选择颜色的方格,我才能做其他事情 “我可以做其他事情” 何必呢,因为它都内置在 JColorChooser 中。听起来您正在尝试重新发明***。 我需要使用不同的布局,因为我必须将它放在工具栏内并且无法调整大小,默认情况下它占用太多空间 【参考方案1】:

首先,您需要考虑这应该如何运作,将您的目标制定为行动点,您可以随时检查并查看它们是否以及如何实现:

应该显示 它应该处理点击事件 它应该能够返回一种颜色(最后选择的颜色,或者没有该颜色的默认值)

现在,支持颜色选择器的一种非常常见的方式是使用如下图所示的内容:

但是,这对于第一次实现来说太复杂了。你首先应该有一些“有效”的东西,也就是说,你可以选择颜色来品尝成功,然后制定出后续的细节。除非您另有说明,否则我假设基本颜色部分现在很好。在这种情况下,您可以创建一个包含JPanel 的类,其中包含可点击的元素。你的class 需要有一个Color 成员,它可以调用一个getter,并且在你的JPanel 中的可点击项目被点击时设置。例如,可点击的项目可以是JPanels

如果您更喜欢现成的东西,请阅读以下内容:

https://docs.oracle.com/javase/tutorial/uiswing/components/colorchooser.html

https://coderanch.com/t/332515/java/Color-Palette

【讨论】:

以上是关于Java Swing 如何在我的自定义 ColorChooserPanel 中创建颜色样本?的主要内容,如果未能解决你的问题,请参考以下文章

如何禁用 UIButton Tint Color?

如何在我的自定义主题中包含自定义 js 文件?

如何在我的自定义类型中包含非命名模块 TS 定义

如何在我的自定义导航控制器中隐藏标签栏?

如何在我的自定义 JComponent 中监听默认颜色变化?

如何在我的自定义用户模块中避免此“'tuple' 对象没有属性 'photo'”错误?