为什么返回0?我究竟做错了什么?
public MainFrame() {
setExtendedState(JFrame.MAXIMIZED_BOTH);
setVisible(true);
System.out.println(getWidth() + " " + getHeight());
}
为什么返回0?我究竟做错了什么?
public MainFrame() {
setExtendedState(JFrame.MAXIMIZED_BOTH);
setVisible(true);
System.out.println(getWidth() + " " + getHeight());
}
你得到 0 的原因是你没有调用任何 pack()、setSize(int, int) 或 setSize(Dimension)。只有在调用其中一种方法时才会计算框架的布局。
以下代码片段可以帮助您。我什至不确定你在做什么。
import javax.swing.*;
import java.awt.*;
public class TestFrameSize {
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// frame.setSize(new Dimension(450, 400));
frame.setExtendedState(JFrame.MAXIMIZED_BOTH);
// frame.setLayout(new BorderLayout());
JLabel question = new JLabel("But that's whole code... Those 3 lines are whole code ");
question.setHorizontalAlignment(JLabel.CENTER);
frame.add(question);
frame.setVisible(true);
System.out.println(frame.getWidth() + " : " + frame.getHeight());
}
}