根據螢幕大小決定版面
以百分比等等"相對"的大小取代"絕對"的大小
JAVA的JFrame當然也可以這樣做!
protected static void myFrame(JMenuBar myMenu){
//取得螢幕大小
Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
//建立Frame,設定標題
JFrame j = new JFrame("我是視窗");
//設定按XX時關閉程式
j.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//設定出現位置、大小-->根據螢幕尺寸調整
j.setBounds(50, 50, (int) (screenSize.getHeight()*0.8), (int) (screenSize.getWidth()*0.4));
//設定MenuBar
j.setJMenuBar(myMenu);
//設為可見
j.setVisible(true);
}
關鍵就是取得視窗大小的方法
Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
之後再利用Dimension類別裡的getWidth()、getHeight()方法來取得螢幕的高與寬~
不過JFrame類別裡面的setBounds方法只接受四個int型態的數字,
所以還得強迫把getWidth()、getHeight()得到的double型態的大小轉為int囉~
j.setBounds(50, 50, (int) (screenSize.getHeight()*0.8), (int) (screenSize.getWidth()*0.4));
沒有留言:
張貼留言