3

我有一个在浏览器中运行的按钮的Applet,当单击该按钮时会打开一个 JFrame。我想将 JFrame 位置设置为运行浏览器的任何监视器的屏幕中心。因此,如果他们只有一个监视器,则 JFrame 将在此屏幕的中心打开。如果他们有两个监视器并且浏览器位于左侧监视器中,单击该按钮将打开左侧监视器中心的 JFrame。如果浏览器在右监视器显示中,则单击该按钮将导致 JFrame 在右监视器显示的中心打开。

目前我正在使用: -

Toolkit.getDefaultToolkit()获取一个 Toolkit 对象,然后调用Toolkit.getScreenSize()以获取屏幕尺寸,然后从中计算出中心位置。无论浏览器在哪里,这始终基于左侧监视器。

另外,我知道如果用户碰巧在他们的显示器之间有不同的分辨率,这可能会更加复杂。

4

3 回答 3

2

获取 的GraphicsConfigurationJApplet然后将其传递给 . 的构造函数JFrame。您还可以使用它GraphicsConfiguration来获得一个用于居中的边界矩形。

于 2012-12-21T18:13:29.010 回答
1

GraphicsDevice将为您提供所有屏幕设备的信息。

它旨在处理您需要的确切场景,只需查看示例代码即可。

于 2012-12-21T18:02:43.363 回答
0

对于居中,通常可以使用 JFrame。setLocationRelativeTo(null)。也许它以默认屏幕为中心?如果参数是小程序怎么办?

于 2012-12-21T18:31:15.770 回答