【问题标题】:Is there a way to flip a JSlider so that the slider arrow points upwards?有没有办法翻转 JSlider 使滑块箭头指向上方?
【发布时间】:2010-10-26 19:30:23
【问题描述】:

我一直在尝试找到一种方法来执行此操作,但似乎无法完全弄清楚。我知道您可以使用 setOrientation(HORIZONTAL|VERTICAL) 更改 JSlider 的方向,还可以使用 setInverted(true) 反转比例。我的问题如下:

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

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

感谢您的帮助!

【问题讨论】:

  • 它非常依赖于 LaF,因为 JSlider 仅在 Metal 中有一个箭头,并且取决于当前主题,GTK LaF

标签: java swing jslider


【解决方案1】:

您可以覆盖 UIManager 中使用的缩略图How to hide the knob of jSlider?

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

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

【讨论】:

  • 谢谢,这正是我所需要的! Java 不会让你只为一个布局元素做这件事,我并不感到惊讶,这太容易了。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-15
  • 2011-12-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多