我有一个带有网格布局的未知尺寸的jpanel,我想知道如何从其组件上获取尺寸信息。

这是一个例子:

    JPanel basicInformation=new JPanel();
    basicInformation.setMaximumSize(100,100);
    basicInformation.setPreferredSize(basicInformation.getMaximumSize());
    basicInformation.setSize(basicInformation.getMaximumSize());
    basicInformation.setMinimumSize(basicInformation.getMaximumSize());
    basicInformation.setLayout(new GridLayout(2, 2, 10, 10));

    JLabel username=new JLabel("Example");
    username.setHorizontalAlignment(JLabel.CENTER);
    username.setOpaque(true);
    basicInformation.add(username);


我想知道如何获得标签的尺寸?

最佳答案

JLabel从Component继承GetSize,该组件应返回一个Dimension供您使用。

您可以随时调用此方法,但是如果框架或面板尚不可见(即仍在构造中),它将返回0,0。在任何getSize()之后执行.setVisible(true)以获取正确的值。

关于java - 如何从gridlayout知道组件的大小?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19862762/

10-12 19:05