注册/登录

概述Swing中的JApplet和JFrame

开发 后端
本文介绍JApplet和JFrame都是只包含一个组件的容器,这个组件是JRootPane的一个实例,所以JApplet和JFrame之间是互相通用的。

这几天,闲时看了一下Swing。

Swing常用的两个类,一个是JFrame窗体类,一个是JApplet小应用程序类。其中JApplet依赖浏览器来执行。很多浏览器都可以支持JApplet,包括了IE,Firefox等。不过如何用IE6来执行的话,IE6会有脚本警告。

JApplet和JFrame都是只包含一个组件的容器,这个组件是JRootPane的一个实例。所以JApplet和JFrame之间是互相通用的。如以下代码:

  1. package com.tntxia.test.swing.jApplet;  
  2. import java.awt.BorderLayout;   
  3. import java.awt.Container;   
  4. import java.awt.FlowLayout;  
  5. import javax.swing.ImageIcon;   
  6. import javax.swing.JApplet;   
  7. import javax.swing.JFrame;   
  8. import javax.swing.JLabel;   
  9. import javax.swing.SwingConstants;   
  10. public class HelloWorld extends JApplet {   
  11. /**  
  12. *   
  13. */  
  14. private static final long serialVersionUID = 52493594634447013L;  
  15. public void init() {   
  16. Container contentPane = getContentPane();   
  17.  
  18. //原文如不修改,不能正常显示图标  
  19. //修改后--------   
  20. java.net.URL codebase=getClass().getResource("loli.jpg");   
  21. JLabel label = new JLabel(new ImageIcon(codebase));   
  22. //----------修改后的程序有个毛病,既作为applet使用时,不能刷新,一旦刷新图就没了。   
  23. contentPane.setLayout(new FlowLayout());  
  24. contentPane.add(label);   
  25. }   
  26. public static void main(String[] args){   
  27. JFrame f = new JFrame();   
  28. JApplet applet = new HelloWorld();   
  29. applet.init();   
  30. f.setContentPane(applet.getContentPane());   
  31. f.setBounds(100,100,400,400);   
  32. f.setVisible(true);  
  33. }   

以上是介绍Swing中的JApplet和JFrame,希望大家在以后的学习用能用上。

【编辑推荐】

  • 浅谈不论是AWT还是Swing模式
  • 全面比较Swing与SWT
  • Swing程序中调用JavaFX代码
  • 概述Swing大多数控件
  • 浅谈Swing中的Look&Feel
  • 责任编辑:佚名 电子工业出版社
    点赞
    收藏