我的应用程序的一部分有一个媒体组件,我正在寻找一个很好的音量滑块我可以使用而不是一个看起来有点难看的JSlider(或者具体来说,带有自定义视觉效果的扩展JSlider会很好)。我可以写一个,但我真的不想重新发明轮子。
就“漂亮”音量滑块而言 - 我正在寻找像VLC这样的东西:
我有没有这样的(免费)组件吗?
答案 0 :(得分:2)
Jasper Potts有一篇很好的博客文章,介绍如何使用Nimbus外观来感受滑块:Skinning a slider with Nimbus。
以下是它的样子:
通过关注博客文章,在滑块上制作自己的自定义外观并不是很难。您可能还对我使用Nimbus外观的customizing the JScrollPane的答案感兴趣,并提供完整的代码示例。
答案 1 :(得分:0)
因为如果点击扬声器你会想要一个静音操作,我建议你实现自己的JSlider并将其插入到外观中;但是,我还强烈建议你重用JSlider实现的BoundedRangeModel。
或者,您可以子类化JPanel并在其中内部打包两个小部件;但是,这种技术需要一个中介模式来保持两个小部件的显示与一个共享的BoundedRangeModel同步。
查看有关制作自定义小部件的旧Sun文档,并使用JSlider的源代码作为起点。它并不像看起来那么难;然而,它确实需要一些时间才能“恰到好处”。