ValueProperty更改侦听器

卢卡斯·耶罗尼莫斯·阿德勒(Lukas Hieronimus Adler)

我有以下问题:

我有一个自定义的Dual-Slider,检查此滑块的每个Value Change非常重要! 在此处输入图片说明

如果我现在更改左侧或右侧滑块,则会发生一个事件-处理!如果我单击滑块的行,则还有一个事件,但它不正确!

当我单击滑块的线时,展位滑块将一起跳跃,这些值是实际的,但是只有1个Event-Handelt!

我如何将这些事件绑定在一起?

 m_slider.value1Property().addListener(new ChangeListener()
        {
            @Override
            public void changed(ObservableValue arg0, Object arg1, Object arg2)
            {
                try
                {
                    handleSlider();
                }
                catch (Exception e)
                {
                }
            }
        });

        m_slider.value2Property().addListener(new ChangeListener()
        {
            @Override
            public void changed(ObservableValue arg0, Object arg1, Object arg2)
            {
                try
                {
                    handleSlider();
                }
                catch (Exception e)
                {
                }
            }

        });

在这里您可以看到我的事件绑定!如果Value1(向左滑块)或Value2(向右滑块)更改了其中的值,则将发生事件触发。但是,如果它们的展位发生变化,则值(单击滑块的行)将只有1个事件触发器,而不是展位!

我该如何解决这个问题?

卢卡斯·耶罗尼莫斯·阿德勒(Lukas Hieronimus Adler)

我找到了解决方案。我必须将Change-Listener事件添加到textProperty!如果有变化,活动将处理其他任何事情!

        m_minSlider.textProperty().addListener(new ChangeListener()
        {

            @Override
            public void changed(ObservableValue arg0, Object arg1, Object arg2)
            {
                handleSlider();
            }
        });

        m_maxSlider.textProperty().addListener(new ChangeListener()
        {
            @Override
            public void changed(ObservableValue arg0, Object arg1, Object arg2)
            {
                handleSlider();
            }
        });

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章