我有一个带有JPanel的ScrollPane,我在JPanel
中添加了大约200个组件。知道我希望Vertical-Slider移动到特定的Component。
但问题是,当我打电话时:
myButton.scrollRectToVisible(myButton.getBounds());
getBounds()
给我宽度和高度0。
显然,这些元素仍未涂漆。我怎么能等到repaint()
方法完成所有工作后才能完成scrollRectToVisible()
?
编辑:
如果我给出了我的代码的简短示例,可能会有所帮助:
addElementsToPanel(); //function where I add Elements to the Panel
myJPanel.revalidate();
myJPanel.repaint();
myButton.scrollRectToVisible(myButton.getBounds());
答案 0 :(得分:5)
SwingUtilities.invokeLater()
?