1

我有一个绑定的 JTextField 和一个由 JComponent 制成的单独图表。当我在图表上拖动时,标记应该更新,并且绑定的 JTextField 应该在拖动时显示其坐标。当我绑定时,直到我完成拖动,图形才会重新绘制。当我关闭绑定时,我的图形会在拖动时重新绘制。我不明白为什么 JGoodies 在我拖动时阻止了我的重绘调用。有谁知道为什么会发生这种情况?

我的代码如下所示:

public void dragMarker()
{
    ...some code...
    firePropertyChange("propertyName", oldValue, newValue);
    myJComponent.refresh();
}

JGoodies 中发生了一些我无法弄清楚的事情。它应该在绑定调用完成后重新绘制。

另外,我刚刚读到 Swing 可以折叠多个调用以重绘为一个调用。那会发生在我身上吗?我的重绘电话最后只是被折叠成一个电话?

4

1 回答 1

0

我的回答是,我并不完全满意,我以 0.3 秒的速度启动了一个带有预定执行程序的 swingworker 线程,该线程运行 firePropertyChangeListeners 并更新 JGoodies 绑定代码。这意味着更新不稳定,但至少绘图代码几乎完美流畅。发生这个问题让我感到难以置信。这是我能做的最好的了……

于 2012-04-18T16:24:26.673 回答