Java基础之创建窗口——创建应用程序窗口(TryWindow)
2013-12-08 15:40
447 查看
控制台程序。
准备好应用程序窗口及其包含的组件并显示,这称为实现窗口。调用应用程序窗口对象的setVisible()方法就会实现窗口。实现了应用程序的GUI之后,在主线程中修改或查询GUI可能会导致死锁。Swing组件的方法都不是线程安全的,所以它们必须在不是主线程的其它线程中执行。
创建GUI并处理与GUI交互的线程成为Swing事件分派线程。
createWindow()方法由匿名Runnable类对象中的run()方法调用,Runnable类对象在main()方法中创建。javax.swing包中定义的swingUtilities类包含多个静态实用方法,包括这里调用的invokeLater()方法。这个方法在事件分派线程中执行作为参数传送的Runnable对象的run()方法,如果要避免处理用户与应用程序窗口进行交互时出现的问题,这就是应采用的方式。
准备好应用程序窗口及其包含的组件并显示,这称为实现窗口。调用应用程序窗口对象的setVisible()方法就会实现窗口。实现了应用程序的GUI之后,在主线程中修改或查询GUI可能会导致死锁。Swing组件的方法都不是线程安全的,所以它们必须在不是主线程的其它线程中执行。
创建GUI并处理与GUI交互的线程成为Swing事件分派线程。
import javax.swing.JFrame; import javax.swing.UIManager; import javax.swing.SwingUtilities; public class TryWindow { public static void createWindow(){ JFrame aWindow = new JFrame("This is the Window Title"); int windowWidth = 400; // Window width in pixels int windowHeight = 150; // Window height in pixels aWindow.setBounds(50, 100, // Set position windowWidth, windowHeight); // and size aWindow.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); aWindow.setVisible(true); // Display the window } public static void main(String[] args) { /* // List look-and-feel class names UIManager.LookAndFeelInfo[] looks = UIManager.getInstalledLookAndFeels(); for(UIManager.LookAndFeelInfo look : looks) { System.out.println(look.getClassName()); } */ SwingUtilities.invokeLater(new Runnable() { public void run() { createWindow(); } }); } }
createWindow()方法由匿名Runnable类对象中的run()方法调用,Runnable类对象在main()方法中创建。javax.swing包中定义的swingUtilities类包含多个静态实用方法,包括这里调用的invokeLater()方法。这个方法在事件分派线程中执行作为参数传送的Runnable对象的run()方法,如果要避免处理用户与应用程序窗口进行交互时出现的问题,这就是应采用的方式。
相关文章推荐
- Java基础之创建窗口——使用边界布局管理器(TryBorderLayout)
- Java基础之创建窗口——使用卡片布局管理器(TryCardLayout)
- Java基础之创建窗口——使用流布局管理器(TryFlowLayout)
- Java基础之创建窗口——使用SpringLayout管理器(TrySpringLayout)
- Java_基础—GUI(创建一个窗口并显示/布局管理器)
- Java基础之创建窗口——使用BoxLayout管理器(TryBoxLayout4)
- Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
- Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
- Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
- Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
- Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
- Java基础之创建窗口——向窗口中添加菜单(Sketcher)
- Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
- Java基础之创建窗口——颜色和光标(TryWindow4)
- Android应用程序窗口(Activity)的窗口对象(Window) 的创建过程分析
- Java基础之创建窗口——使用GridBagLayout管理器(TryGridBagLayout)
- Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析
- Java基础之创建窗口——使窗口在屏幕居中(TryWindow2/TryWindow3)
- Android应用程序窗口(Activity)的窗口对象(Window) 的创建过程分析
- Android应用程序窗口(Activity)的窗口对象(Window)的创建过程分析