mypl8110627 的方法當(dāng)然是可以的,但是如果要考慮任務(wù)欄高度之類的還要調(diào)用 getScreenInsets() 方法。
創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比青秀網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式青秀網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋青秀地區(qū)。費(fèi)用合理售后完善,10多年實(shí)體公司更值得信賴。
其實(shí)有一個(gè)更簡(jiǎn)單的方法,只要一句話:你在 f.setSize(500, 600); 下面再加上:f.setLocationRelativeTo(null); 就OK了。
Dimension screensize = Toolkit.getDefaultToolkit().getScreenSize();
int width = (int)screensize.getWidth();
int height = (int)screensize.getHeight();
/*通過(guò)以上代碼獲取屏幕的尺寸,然后使用相應(yīng)的代碼獲取你的窗口尺寸,然后進(jìn)行相應(yīng)的運(yùn)算,可以獲取你的界面左上角所在位置的坐標(biāo)*/
最后,setLocationRelativeTo(null); //居中顯示
用窗體的大小減去組件的大小除以2即可活的居中的位置
代碼示例,我寫的:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Test extends JFrame
{
private JButton button;
public Test()
{
super("按鈕居中顯示示例");
button=new JButton("滿意答案");
button.setSize(100,50);
Container rongqi=this.getContentPane();
rongqi.setLayout(null);
rongqi.add(button);
setSize(400,200);
setResizable(false);
setLocationRelativeTo(null);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
//關(guān)鍵代碼,設(shè)置按鈕位置
button.setBounds((this.getWidth()-button.getWidth()-5)/2,(this.getHeight()-28-button.getHeight())/2,
button.getWidth(),button.getHeight());
setVisible(true);
}
public static void main(String[]args)
{
new Test();
}
}