有没有办法翻转 JSlider 使滑块箭头指向上方?

发布于 2024-09-29 08:52:43 字数 337 浏览 7 评论 0原文

我已经尝试找到一种方法来做到这一点有一段时间了,但似乎不太明白。我知道您可以使用 setOrientation(HORIZONTAL|VERTICAL) 更改 JSlider 的方向,并且还可以使用 setInverted(true) 反转比例。我的问题如下:

1)JSlider需要水平;
2)JSlider需要位于数据下方;
3) 实际滑块上的箭头(尖头)应指向上方,而不是指向下方(即:朝向数据)。

我能想到的唯一方法是覆盖 JComponent 中的 PaintComponent 方法,并为自定义 JSlider 完全重新编码,这似乎有点荒谬,我什至不确定它是否有效。

感谢您的帮助!

I've been trying to find a way to do this for a while now and can't quite seem to figure it out. I know you can change the orientation of a JSlider, using setOrientation(HORIZONTAL|VERTICAL), and that you can also invert the scale, using setInverted(true). My problem is as follows:

1) The JSlider needs to be horizontal;
2) The JSlider needs to be below the data;
3) The arrow (pointy-tip) on the actual slider should be pointing upwards, not downwards (i.e.: towards the data).

The only way I can fathom to do this is to overwrite the paintComponent method from JComponent and entirely re-code it for a custom JSlider, which seems a tad ridiculous, and I'm not even sure it would work.

Thanks for the help!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

云雾 2024-10-06 08:52:43

您可以覆盖 UIManager 中使用的缩略图 如何隐藏 jSlider 的旋钮?

UIManager.getLookAndFeelDefaults().put(
    "Slider.horizontalThumbIcon",
    new Icon('your_icon')
);

但是,这将对程序中的所有滑块执行。

You can override the thumbnail used in UIManager How to hide the knob of jSlider?

UIManager.getLookAndFeelDefaults().put(
    "Slider.horizontalThumbIcon",
    new Icon('your_icon')
);

However, this would be done to all sliders in your program.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文