填充程序未正确更新

时间:2013-08-12 22:54:13

标签: java swing validation jscrollpane repaint

所以当我打开我的文档时,这就是我所看到的:

enter image description here

以下是我的文档的第二页(其余部分为空)的第一部分和第一部分。除了绿色矩形中的内容(由框布局管理),它们是100%相等。

在所有可见元素(洋红色的东西,第一个JTextArea(大于其他)对问题无关紧要)之后,他们都添加了一个Box.Filler,将所有内容推送到顶部页面。

因此,当我打开文档时,项目38应该与其他所有项目一样高,但由于某种原因,它不是。

我没有调用重绘并在JScrollPane和它的视口上验证在打开文档后立即同时包含两个页面。

此外,当我在文档中的任何位置添加或删除另一个元素时,数字38会感觉它并调整到适当的高度。我确实打电话给sam重新绘制,并在文件开头发生这种情况时进行验证。

chageShape()方法在填充程序上调用了相同大小的技巧,但它似乎是一个肮脏的解决方案......

但为什么不马上呢?

编辑:经过一些测试后,我发现这里的填充物一直是个坏孩子。但是我很难理解为什么第一页上的那个总是正确地自我更新(即使页面上的元素更少),但是第二页上的那个拒绝,即使这两个页面的编码方式没有差异(同一个对象的两个实例),并且从一个优于两者的容器调用重绘和验证。

0 个答案:

没有答案