3

我写了一个 Swing 应用程序。我想将 设置JFrame为在用户屏幕的中心。我可以使用以下方法将其设置为屏幕的大致中心:

JFrame frame = new JFrame("Test Frame");
Rectangle r = new Rectangle(600, 300, 400, 400);
frame.setBounds(r);

有没有办法定义Rectangle r它的中心位于任何屏幕的中心?

setBounds()动态改变框架位置的方法是错误的吗?

4

1 回答 1

4

您想在屏幕中居中放置 JFrame 吗?如果是这样,那么只需setLocationRelativeTo(null)在调用pack(). 如果可以避免的话,您真的不想设置 JFrame 的大小,而是让您的布局管理器为您设置大小。该pack()方法将要求容器的布局管理器布置其组件并为其组件设置最佳尺寸。

编辑
关于您的问题:

谢谢,那太好了。任何机会你都可以告诉我在哪里可以找到 docs.oracle 中的方法详细信息

由于可以在 JFrame 上调用此方法,因此只需转到JFrame API即可。如果这是父类的方法,API 会告诉您并提供到父类及其方法的链接。

于 2012-08-04T19:33:39.517 回答