【问题标题】:making a color selector with multiple selects java制作具有多个选择java的颜色选择器
【发布时间】:2015-04-12 01:28:25
【问题描述】:

我想制作一个 GUI 对象,它以某种方式像滑块一样工作 此滑块的值具有 rgb int 的范围,并且还以图形方式显示与滑块平行的色谱 所以它应该混合下面两张图片

频谱

(来源:whiterockscience.com

滑块

(来源:dreamincode.net

最后,这个图形对象应该能够被多次选择,因此它与实际滑块完全不同,因此 rgb int 值的刻度。这意味着用户可以点击例如 4 个不同的光谱部分,然后代码会将每次点击的 rgb int 值存储到一个数组中 我怎样才能做出这样的事情?

【问题讨论】:

  • 你有没有尝试过?如果没有,请尝试,然后再回来解决您遇到的任何问题。如果您完全被难住了,请告诉我们您想要什么,也许可以提供一个外观模型,我们也许可以提供帮助。
  • 是的,我有,但这是两种不同图形组件的混合,我不知道如何设计一个新的,因为我对 java 很陌生。我正在使用这些数据(rgb int)来绘制图形和绘制线条,这些值我已经弄清楚了其他部分,但我不知道如何做这部分
  • 啊,有道理。您的链接已替换为图像本身,这往往是比链接图像更好的做法。对于刚接触 Java 的人来说,这可能太投入了;过去一年左右我没有使用过 Swing,但如果我记得用自定义渲染制作新组件是很烦人的。有没有可以替代的解决方法?
  • 由于声誉低下,我无法链接,所以这就是它被编辑的原因:) 最终目标是制作一个绘图师,而不是获得像 ADD(MUL(x,y) , z) 这样的数学表达式然后要求用户选择一个变量作为颜色变量(以及其他变量的值),以便该变量将具有用户选择的该颜色的值。所以当用户单击 3 种不同颜色的值为 3,49 ,50 时grapher 将绘制三条线,每条线都具有其中一个值并由该值的颜色绘制
  • 为什么不设置三个独立的滑块?这肯定会更容易,如果颜色的顺序很重要(看起来很重要),它也不会那么模棱两可。尝试一下,如果您有具体问题,请询问这些问题,而不是询问代码。

标签: java user-interface colors rgb


【解决方案1】:

JColorChooser 在大多数情况下可能是您想要的,它易于实现且易于使用。这是你想要的吗?

如果这就是您要寻找的东西,我认为您最好的选择是通过paintComponents 在JPanel 上绘制图像。也许绘制一个滑块的图像并在其下方绘制一个频谱,并在您触摸频谱图片或滑块部分时添加 mouseListeners 以处理事件。要让滑块抓取正确的颜色,应该是这样的。

另一点有用的信息是进入绘图并检查滑块的工作原理并查看 RGB 值以及它们如何变化。

【讨论】:

  • 如果你真的想要这个比什么都重要,请继续尝试,并在遇到新问题时发布你的代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-04
  • 1970-01-01
  • 1970-01-01
  • 2011-01-29
  • 2011-01-20
  • 2019-04-08
相关资源
最近更新 更多