我有一个像这样的topComponent构造函数:
public BrowserTopComponent()
{
initComponents();
System.out.println("TopComponent size: "+this.getSize());
System.out.println("TopComponnet prefered size: "+this.getSize());
setName(NbBundle.getMessage(BrowserTopComponent.class,
"CTL_BrowserTopComponent"));
setToolTipText(NbBundle.getMessage(BrowserTopComponent.class,
"HINT_BrowserTopComponent"));
System.out.println("JPanel size: "+jPanel1.getSize());
System.out.println("JScrollPane1 size: "+jScrollPane1.getSize());
// setIcon(ImageUtilities.loadImage(ICON_PATH, true));
}
问题在于组件上的所有getSize()调用。它们都返回[width = 0,height = 0]。我不明白getSize()什么时候被初始化,以获得正确的尺寸?如何在构造函数中获得实际大小的组件?
谢谢
答案 0 :(得分:0)
试试这个.getPrefferedSize()。width& this.getPrefferedSize()。长度代替。这将返回组件的首选(或实际)尺寸。