网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > Java
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
网络编程:ASP教程,ASP.NET教程,PHP教程,JSP教程,C#教程,数据库,XML教程,Ajax,Java,Perl,Shell,VB教程,Delphi,C/C++教程,软件工程,J2EE/J2ME,移动开发
本月文章推荐
.感受JDO 2.0查询语言的特点.
.正则表达式大全(regular express.
..Net下调用SQLServer2000中存储过.
.下一代WEB开发模式Tapestry简介.
.攥在手掌里的Java.
.Resin的使用和安装(1).
.JBoss4.0数据源配置大全.
.构建更好的异常处理框架.
.log 方法.
.一个 Java,各自表述.
.Applet做数字签名,授予访问本地.
.JBuilder X 初体验.
.Jar clone的版本冲突.
.Sun力推JDS数据库计划 开拓数据库.
.在Java中如何模拟多继承.
.高级应用 java多线程设计模式详解.
.java内部类的总结.
.Struts开发指南之其他Web构架.
.分享关于j2me xmlReader的轻量级.
.IO流(3)之管道流类.

[JAVA100例]076、在Applet中使用Swing

发表日期:2008-1-5


import Java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.tree.*;
import java.io.*;
import java.net.*;
import java.util.*;
import java.applet.*;
/**
 * <p>Title: Applet中使用SWING</p>
 * <p>Description: 使用SWING的JApplet实现树功能。</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Filename: PageTree.java</p>
 * @version 1.0
 */
public class PageTree extends JApplet implements TreeSelectionListener {
 DefaultMutableTreeNode[] nodeAt = new DefaultMutableTreeNode[256];
 String target = null;
 Hashtable links = new Hashtable();
 AppletContext context;
 public void init() {
  //获取Applet的内容
  context = getAppletContext();
  //定义根节点
  DefaultMutableTreeNode root = null;
  getContentPane().setLayout(new BorderLayout());
  //获取参数。定义的数据配置文件。
  String s = getParameter("file");
  if (s != null) {
   try {
    //使用URL方式打开数据文件,实现在网络上使用。
    URL url = new URL(getDocumentBase(), s);
    BufferedReader br = new BufferedReader(
     new InputStreamReader(url.openStream(), "JISAutoDetect"));
    //读取第一行数据,假如为空则不执行
    String line = br.readLine();
    if (line == null) return;
    root = new DefaultMutableTreeNode(line);
    nodeAt[0] = root;
    int level = 0;
    while ((line = br.readLine()) != null) {
     //使用“”分开数据
     StringTokenizer st = new StringTokenizer(line, "");
     String token = st.nextToken();
     int n = countSpaces(token);
     //添加节点名称
     DefaultMutableTreeNode node = new DefaultMutableTreeNode(token.trim());
     //计算节点级数
     for (int i = level + 1; i < n; i++) {
      DefaultMutableTreeNode dummy = new DefaultMutableTreeNode("");
      nodeAt[i].add(dummy);
      nodeAt[i+1] = dummy;
     }
     level = n;
     nodeAt[n].add(node);
     nodeAt[n+1] = node;
     //对“”符号后的数据进行处理
     if (st.hasMoreTokens()) {
      token = st.nextToken();
      try {
       url = new URL(token.trim());
       links.put(node, url);
      } catch (MalformedURLException ex) {
       ex.printStackTrace();
      }
     }
    }
   } catch (MalformedURLException e) {
    e.printStackTrace();
   } catch (IOException e) {
    e.printStackTrace();
   }
   s = getParameter("target");
   if (s != null) target = s.trim();
   JTree tree = new JTree(root);
   //添加树的选择监听
   tree.addTreeSelectionListener(this);
   JScrollPane jsp = new JScrollPane(tree);
   getContentPane().add(jsp, BorderLayout.CENTER);
  }
 }
/**
 *<br>方法说明:计算空格数
 *<br>输入参数:
 *<br>返回类型:
 */ 
 private int countSpaces(String s) {
  int n = 0;
  while (s.charAt(n) == ´ ´) {
   n++;
  }
  return n;
 }
/**
 *<br>方法说明:树选择监听实现方法
 *<br>输入参数:TreeSelectionEvent e 选择树节点事件
 *<br>返回类型:
 */ 
 public void valueChanged(TreeSelectionEvent e) {
  TreePath path = e.getPath();
  Object o = path.getLastPathComponent();
  URL url = (URL)links.get(o);
  if (url != null) {
   System.out.println(links.get(o));
   //打开连接,通知浏览器加载网页(使用浏览器打开Applet的情况下)
   context.showDocument(url);
  }
 }



上一篇:[JAVA100例]039、生成PDF文件 人气:1258
下一篇:[JAVA100例]072、欢迎进入Applet世界 人气:619
浏览全部Java的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐