【问题标题】:Java - Custom JSlider will not updateJava - 自定义 JSlider 不会更新
【发布时间】:2012-02-24 05:16:48
【问题描述】:

我有一个基于 JSlider 的自定义组件。它本质上是一样的,只是它有 2 个拇指,我将其命名为 DualSlider。

我需要偶尔更改滑块的最大值,所以每次我都会调用 updateUI 来反映这一点。

public void updateUI() {
    this.setUI(new DualSliderUI(this));
    this.updateLabelUIs();
}

但是,无论我在使用程序时尝试更改多少次,DualSlider 在尝试使用时的最大值仍然设置为原始值。我可以通过一些 println 语句确认正在使用具有新最大​​值的滑块制作新的 DualSliderUI,但无论出于何种原因,我初始化滑块的原始 DualSliderUI 是正在使用的那个。

当我更新属性时,我还必须确保执行哪些其他操作以避免这种情况?

【问题讨论】:

    标签: java swing custom-component jslider


    【解决方案1】:

    1) 我看不出使用updateUI() 的原因,这应该做一次,只有当你构建了这个JSlider 时,永远不要重复这样做

    2) 你看过BoundedRangeModel, maybe

    【讨论】:

      猜你喜欢
      • 2015-07-18
      • 1970-01-01
      • 1970-01-01
      • 2019-06-09
      • 2012-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多