如何自定义JSlider以获得更大的“拇指”?

时间:2018-04-28 02:30:18

标签: jslider uimanager

我有一个我正在开发的Java GUI,并且由于简单且不可避免的原因我需要用户输入的JSlider上的“拇指”的默认大小我遇到了麻烦应用程序必须在触摸屏上运行,没有鼠标,并且手指触摸的精确度不够好,以至于不容易在滑块上“抓住”移动它。触摸屏就是......它只是不那么精确。

没问题,我想!我只是定制它,让“拇指”更大!在进行我的研究时,我发现this previously asked question,它看起来像有用的数据,但我无法弄清楚如何使它工作。在该问题的答案中,它指向this page where it purports to show how it's done,但是......然后它没有显示出来?!

我猜他们认为你知道如何处理以下内容:

Slider.thumbHeight  Integer
Slider.thumbWidth   Integer

但是,我没有!有人得到了一个例子的代码片段吗?

我玩得那么无能,有这样的东西,我真的不太明白:

UIDefaults defaults = UIManager.getDefaults();
defaults.put("Slider.thumbHeight", 45);
defaults.put("Slider.thumbWidth", 15);

...没有成功,虽然编译得很好。我尝试在此之后创建滑块。不。我试过了mySlider.updateUI(); Nope。而且,当然,这根本不会编译:{{1​​}} ...我只是不知道应该如何定制这些东西。

提前致谢。

1 个答案:

答案 0 :(得分:0)

我知道过时的帖子,但仍然可能与其他帖子有关。

“ Slider.thumbHeight Integer”只是告诉您该变量的类型为整数,因此在设置该变量时需要一个整数作为参数。

在创建JSlider之前,您必须更改UIdefaults(如您的示例)。

这表示它是否起作用似乎与操作系统有关。它在我的Windows10 PC上运行良好,但在我真正需要它的Raspbian Linux上却无法运行:-(