Java Swing 如何在自定义 ColorChooserPanel 中创建色样?

Java Swing How can I create a Color Swatch in my custom ColorChooserPanel?

我正在制作我的自定义 ColorChooserPanel class,但我不知道如何创建 ColorSwatch。

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

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

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

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

现在,支持颜色选择器的一种非常常见的方法是像这张图片那样:

但是,这对于第一次实施来说太复杂了。你应该先有一个"works"的东西,就是你可以选择颜色来尝尝成功的滋味,然后再算出后面的细节。除非您另有说明,否则我假设 Basic colors 部分现在是好的。在这种情况下,您可以创建一个 class,其中包含一个 JPanel,其中包含可点击的元素。您的 class 需要有一个 Color 成员,该成员可以调用 getter 并在您的 JPanel 中的可点击项目被点击时设置。例如,可点击的项目可以单独 JPanels

如果你更喜欢现成的东西,那么请阅读这些:

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

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