根據螢幕大小決定版面
以百分比等等"相對"的大小取代"絕對"的大小
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));
沒有留言:
張貼留言