控制台程序。
1、使用ToolKit对象在屏幕的中心显示窗口,将窗口的宽度和高度设置为屏幕的一半:
1 import javax.swing.JFrame; 2 import javax.swing.SwingUtilities; 3 import java.awt.Toolkit; 4 import java.awt.Dimension; 5 6 public class TryWindow2 { 7 public static void createWindow(){ 8 JFrame aWindow = new JFrame("This is the Window Title"); 9 Toolkit theKit = aWindow.getToolkit(); // Get the window toolkit 10 Dimension wndSize = theKit.getScreenSize(); // Get screen size 11 12 // Set the position to screen center & size to half screen size 13 aWindow.setBounds(wndSize.width/4, wndSize.height/4, // Position 14 wndSize.width/2, wndSize.height/2); // Size 15 aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 16 aWindow.setVisible(true); // Display the window 17 } 18 19 public static void main(String[] args) { 20 SwingUtilities.invokeLater(new Runnable() { 21 public void run() { 22 createWindow(); 23 } 24 }); 25 } 26 }
组件拥有的由java.awt.Dimension对象定义的“首选”尺寸,Dimension对象封装了宽度和高度值。
Component类中定义的另一个重要方法是getToolkit(),这个方法返回Toolkit类型的对象,其中包含了与运行应用程序有关的环境信息,包含屏幕尺寸(以像素为单位)。使用getToolkit()方法可以设置窗口在屏幕中的大小和位置。
2、调用JFrame对象从Window类继承而来的setLocationRelativeTo()方法,这个方法使窗口在传送为参数的另一个组件中居中放置。如果参数为null,这个方法就使窗口在主显示器中居中放置。
1 import javax.swing.JFrame; 2 import javax.swing.SwingUtilities; 3 4 public class TryWindow3 { 5 public static void createWindow(){ 6 JFrame aWindow = new JFrame("This is the Window Title"); 7 int windowWidth = 400; // Window width in pixels 8 int windowHeight = 150; // Window height in pixels 9 aWindow.setSize(windowWidth, windowHeight); // Set window size 10 aWindow.setLocationRelativeTo(null); // Center window 11 12 aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 13 aWindow.setVisible(true); // Display the window 14 } 15 16 public static void main(String[] args) { 17 SwingUtilities.invokeLater(new Runnable() { 18 public void run() { 19 createWindow(); 20 } 21 }); 22 } 23 }