问题标签 [propertychangelistener]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
124 浏览

java - GEF 连接和 PropertyChangeListener

我正在写一个基于 RCP 和 GEF 的显示街道地图的 eclipse 插件。节点是城市,连接应该是街道。我的连接有几个选项,如宽度、颜色或名称,它们可以通过属性面板进行更改。我的问题是, AbstractConnectionEditPart 没有实现 PropertyChangeListener 并且通常以与节点不同的方式处理。我发现 GEF 有一个名为 ConnectionHandle 的抽象类,但我不知道如何将它“连接”到我的连接控制器。

是否有人有更多信息或可以提供工作代码片段?

谢谢。

0 投票
1 回答
728 浏览

java - 在不更改值的情况下为 JProgressBar 触发 PropertyChangeListener

我希望这是一个不需要 SSCCE 的简单问题,因为我很难将一个简短但包含所有必要部分的问题放在一起。

我有一个包含 JProgressBar 的 GUI (JFrame)。里面的进度条代码createGUI()

进度条使用 apache commons IO FileUtils/copyFile 类/方法监视文件的复制。绘制的字符串是到目前为止复制的百分比(进度)和总 MB。这一切都是使用 SwingWorker 完成的,以使 EDT 远离长时间运行的进程。updateProgress()progressBar 最初设置为不确定,但在创建第二个目录(文件将被复制到该目录)后,进度条在第一个方法调用时设置为常规(非不确定)模式(updateProgress()是我自己在SwingWorker 类,我将其命名为“任务”,创建它以便setProgress()可以从 EDT 外部访问)。这包含在 内部class Task extends SwingWorker<Void, String>{},以及标准doInBackground()方法等:

然后我创建了一个 PropertyChangeListener 来更新进度条,无论何时setProgress()使用新值(也在内部createGUI())调用:

我的问题如下:

首次渲染帧时,仅出现 0%,并且“(xxMB of xxMB)”不可见。括号中的第二部分仅在第一次百分比变化后出现。newPercentValue有没有办法在更改之前更新 MB 值(显示已复制文件的大小和总大小) ?听者当前的坐姿,它(百分比和 MB 值)仅在百分比第一次增加后更新。如何在百分比从 0% 变化之前更新 MB 值?

我希望这里有足够的代码可以继续。我通常会发布一个 SSCCE,但老实说,我不知道在这种情况下我会如何做,并且在不添加大量代码的情况下包含所有文件大小和百分比更新。我试图只包含最重要的信息,但如果有其他我应该添加的内容,请随时要求更多。非常感谢!

0 投票
3 回答
1320 浏览

java - String.Format("%05.2f", 8.00) 中的 NumberFormatException

我的程序使用意大利语言环境,所以Float.parseFloat("8,00")必须运行良好。但是我在下面一行遇到了一个非常糟糕的 NFE:

我注意到,上面的代码在我对侦听器所做的一些更改中运行良好,这些更改看起来与这行代码无关。(现在我有一个 propertyChangeListener 可以在值更改时更新模型。

异常的有用部分:

0 投票
1 回答
256 浏览

java - 防止 jtable 列在超过某个值后调整大小

我有一个总列宽为 X 像素的 jtable。

当总宽度超过 X 像素时,我想防止该 jtable 中的任何列调整大小。

我徒劳地尝试了 PropertyChangeListener 和其他自定义实现。

0 投票
1 回答
2521 浏览

java - 如果摆动 Jcombo 框中的旧值和新值相等,如何触发属性更改侦听器

组合框有两个值:ANDOR

我为 Combo 编写了属性更改侦听器,当且仅当当前选择的值和以前的值不同时,触发此事件。但是我需要即使值相同也应该触发此事件?

这是我的示例代码片段:

0 投票
1 回答
221 浏览

java - 具有属性更改侦听器动态添加的Bean utils?

Commons Beanutils库包含在运行时对 bean 进行操作的好方法。但奇怪的是,我可以找到任何方法来操作更改侦听器。

即我可以在底层bean 中设置一些属性WrapDynaBean,但是我不能为这个属性更改添加监听器。

这是真的吗?为什么?

回答是否有任何图书馆可以满足这一差距?

0 投票
1 回答
1326 浏览

java - 不知道如何在 JFormattedTextField 上修复我的 PropertyChangeListener

在帖子末尾编辑

测试代码和输出

堆栈跟踪:


我的想法

因为我有一个传入 a double(it's convert()) 的方法,并且看似evt.getNewValue()返回直接值,在输入时它在技术上是 a long,所以它抛出了那个错误。

parsing但是我的每一次尝试evt.getNewValue()都没有奏效。也许对我想用这个程序做什么有一点了解会有所帮助。


该计划的用途

所以我有一个JPanel(在 a 中tabbedPane)有两个JFormattedTextField输入。这是一个转换应用程序。我的转换class method传入 adouble并返回 a double。我希望将字段链接在一起,或者换句话说,只要一个字段的输入发生更改,其他字段就会随之更改(因为它是转换的输出)。

我正在考虑放弃PropertyChangListenerDocumentListener改用a,但选择先尝试前者,因为后者有3个overrideable methods我必须处理,其中一个可能会导致一些意想不到的结果(events例如,突出显示和删除该字段会触发两个) .


TL;博士:

有没有更好的方法来获得动态更新的双输入字段应用程序?在一个字段中输入一个数字,另一个字段的数字会自动更新。

仍然是 Java 的新手。


编辑1

我找到了一个临时解决方案:将 aDecimalFormat作为JFormattedTextField. 但如果它可以在没有小数的情况下工作,我会喜欢它。

编辑2

回答的问题,没有意识到evt.getNewValue()正在返回一个Number实例。

0 投票
1 回答
133 浏览

java - PropertyChangeListener requestFocus 问题

全新的方向

以下是我的问题的 SSCCE。我正在尝试在输入输入时更新字段,在这种情况下,必须丢失焦点才能进行更新。

我需要能够将此代码与 'converter' 一起使用method,因此不能将命令放入其中method Update()

我已经得到了这个工作,PropertyChangeListener但显然这不是一个好的途径。

0 投票
1 回答
1302 浏览

java - 创建自定义绑定属性

解释

我已经创建了我当前项目的一个示例,但采用的是 SSCCE 形式。

代码已更新:

再次注意这是一个 SSCCE,非常准系统。这个想法是存在的。

基本上,上面的代码创建了一个JFrame用 2JSlider更新 aJLabel和 a 的代码Listener。我要尝试的是基于JSliders.


我该怎么办

我想我应该创建一个Bound Property,但我不熟悉 Java 的那个领域。

如果这不是解决问题的好方法,我愿意接受建议。

0 投票
1 回答
480 浏览

java - Java 倒数计时器不运行 TimerTask

我正在尝试运行倒数计时器,但出于某种奇怪的原因,它不会重复计数。当我在 Tick() 方法上设置断点时,甚至没有命中断点。这是代码:

这是我的 JUnit 测试方法:

这是控制台输出:

定时器开始倒计时。测试