getLocation()
的{{1}}和getLocationOnScreen()
方法有什么区别?
我想测试这段代码有什么不同,但结果是一样的。我应该使用哪种方法?
JFrame
输出:
public static void main(String args[]) {
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setLocation(150, 100);
frame.setVisible(true);
System.out.println("getLocation: " + frame.getLocation().getX() + " " + frame.getLocation().getY());
System.out.println("getLocationOnScreen: " + frame.getLocationOnScreen().getX() + " " + frame.getLocationOnScreen().getY());
}
答案 0 :(得分:0)
当您创建这样的JFrame时,父级为null,因此它就是屏幕。这就是为什么在这里,函数返回相同的值:getLocationOnScreen()
返回相对于屏幕的框架位置,getLocation()
返回框架相对于其父级的位置,此处为屏幕