<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>harry.blog &#187; AsWing</title>
	<atom:link href="http://blog.harrspy.com/tag/aswing/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.harrspy.com</link>
	<description>留住往昔的美丽，去开创未来的光明。</description>
	<lastBuildDate>Wed, 01 Sep 2010 14:30:35 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Python Doc Contents Sidebar</title>
		<link>http://blog.harrspy.com/python-doc-contents-sidebar</link>
		<comments>http://blog.harrspy.com/python-doc-contents-sidebar#comments</comments>
		<pubDate>Thu, 24 Apr 2008 02:02:39 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[Doc]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[RIA]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/?p=172</guid>
		<description><![CDATA[有点不是很习惯Python的官方文档，虽然有Python Sidebar，但是似乎挺久没更新了，所以自己用AS弄了一个，直接读取官方的页面。 可以加入到Firefox的侧边栏使用 ，如果你不是使用Firefox的话，可以将这个页面加入到你的浏览器书签或侧栏中 update 4.29: 或者，你也可以用这个页面 http://harryxu.cn/pydoc.html function addSidebar() { if (!window.sidebar &#124;&#124; !window.sidebar.addPanel) { alert ("对不起您必须使用Firefox才能使用这项功能"); } else { window.sidebar.addPanel ("Python Toc", "http://harryxu.cn/pytoc.html",""); } } 加入到Firefox侧栏 SVN Repository]]></description>
			<content:encoded><![CDATA[<p>有点不是很习惯Python的官方文档，虽然有<a href="http://www.edgewall.org/python-sidebar/" target='_blank'>Python Sidebar</a>，但是似乎挺久没更新了，所以自己用AS弄了一个，直接读取官方的页面。</p>
<p>可以加入到Firefox的侧边栏使用 <img src='http://blog.harrspy.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  ，如果你不是使用Firefox的话，可以将<a href="http://harryxu.cn/pytoc.html" target='_blank'>这个页面</a>加入到你的浏览器书签或侧栏中<br />
update 4.29: 或者，你也可以用这个页面 <a href="http://harryxu.cn/pydoc.html" target='_blank'>http://harryxu.cn/pydoc.html</a><br />
<script>
function addSidebar() {
  if (!window.sidebar || !window.sidebar.addPanel) {
    alert ("对不起您必须使用Firefox才能使用这项功能");
  } else {
    window.sidebar.addPanel ("Python Toc", "http://harryxu.cn/pytoc.html","");
  }
}
</script><br />
<a href="javascript: addSidebar()">加入到Firefox侧栏</a><br />
<a href="http://harryxu.googlecode.com/svn/trunk/pytoc/" target='_blank'><br />
SVN Repository</a><br />
<br />
<highslide image="http://pic.yupoo.com/harryxu/413075736fdd/vfprmhs0.jpg" thumbnail="http://pic.yupoo.com/harryxu/413075736fdd/small.jpg" altdesc="" captiontext="" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/python-doc-contents-sidebar/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>AsWing中文站点</title>
		<link>http://blog.harrspy.com/aswing-chinese-site</link>
		<comments>http://blog.harrspy.com/aswing-chinese-site#comments</comments>
		<pubDate>Fri, 22 Feb 2008 07:41:56 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[RIA]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/aswing-chinese-site</guid>
		<description><![CDATA[http://cn.aswing.org/ http://bbs.aswing.org/]]></description>
			<content:encoded><![CDATA[<p><a href="http://cn.aswing.org/" target="_blank">http://cn.aswing.org/</a><br />
<a href="http://bbs.aswing.org/" target="_blank">http://bbs.aswing.org/</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/aswing-chinese-site/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>基于AsWing的AutoComplete组件</title>
		<link>http://blog.harrspy.com/aswing-autocomplete</link>
		<comments>http://blog.harrspy.com/aswing-autocomplete#comments</comments>
		<pubDate>Wed, 23 Jan 2008 14:03:41 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[AutoComplete]]></category>
		<category><![CDATA[ComboBox]]></category>
		<category><![CDATA[RIA]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/aswing-autocomplete</guid>
		<description><![CDATA[参考了一下Flex的AutoComplete input组件源代码后，基本了解了思路，于是扩展AsWing的JComboBox实现了一个，不过AsWing和Flex的架构差别还是比较大，所以搞起来不太一样，但基本思路是差不多的，下面是一个简单的实例。 大家测试下，看看有什么bug没，发现问题还请帮忙指出啊 http://harryxu.cn/demo/ACTest.swf 功能不是很强，就做到了简单的输入提示，可以自定义匹配函数(filterFunction)，默认就是根据用户的输入和ListModel中的数据进行字母匹配。 本来想把右边那个按钮去掉的，后来觉得放着也没什么，如果有需要的朋友可以拿去用，要扣掉那个按钮的话，要改下ComboxUI的代码。 源代码：JAutoComplete.zip]]></description>
			<content:encoded><![CDATA[<p>参考了一下Flex的<a href="http://www.adobe.com/cfusion/exchange/index.cfm?event=extensionDetail&amp;extid=1047291" target="_blank">AutoComplete input</a>组件源代码后，基本了解了思路，于是扩展AsWing的JComboBox实现了一个，不过AsWing和Flex的架构差别还是比较大，所以搞起来不太一样，但基本思路是差不多的，下面是一个简单的实例。</p>
<p>大家测试下，看看有什么bug没，发现问题还请帮忙指出啊 <img src='http://blog.harrspy.com/wp-includes/images/smilies/icon_surprised.gif' alt=':eek:' class='wp-smiley' /> </p>
<p><a href="http://harryxu.cn/demo/ACTest.swf">http://harryxu.cn/demo/ACTest.swf</a></p>
<p>功能不是很强，就做到了简单的输入提示，可以自定义匹配函数(<code>filterFunction</code>)，默认就是根据用户的输入和ListModel中的数据进行字母匹配。</p>
<p>本来想把右边那个按钮去掉的，后来觉得放着也没什么，如果有需要的朋友可以拿去用，要扣掉那个按钮的话，要改下ComboxUI的代码。</p>
<p>源代码：<a href="http://dl.getdropbox.com/u/130618/downloads/JAutoComplete.zip">JAutoComplete.zip</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/aswing-autocomplete/feed</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>SimpleXML2TreeNode</title>
		<link>http://blog.harrspy.com/aswing-ext-simplexml2treenode</link>
		<comments>http://blog.harrspy.com/aswing-ext-simplexml2treenode#comments</comments>
		<pubDate>Mon, 17 Dec 2007 14:11:08 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[tree]]></category>
		<category><![CDATA[treeNode]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/aswing-ext-simplexml2treenode</guid>
		<description><![CDATA[写了一个简陋的小程序，将XML解析成AsWing的tree node，便于将XML文档在JTree组件中表现出来，之前一直想继承DefaultTreeModel来实现，不过感觉好像DefaultTreeModel中好多都是private(像根节点root，子类中不能调用的话又要自己实现一边会调用到root的方法)，不能直接使用，但是如果仅实现TreeModel接口，又要把许多DefaultTreeModel中的方法重新写一遍，怎么都没想到更好的办法，就写了这个把XML解析成treeNode的简陋class，大家如果有好的建议请赐教啊 下面是源代码 package cn.harryxu.aswingext.tree &#123; &#160; import org.aswing.tree.DefaultMutableTreeNode; import org.aswing.tree.MutableTreeNode; &#160; /** * Parse XML to AsWing tree node. * * @author harry */ public class SimpleXML2TreeNode &#123; &#160; protected var _root:MutableTreeNode; protected var _xml:XML; protected var labelField:String; &#160; public var autoParse:Boolean; &#160; public function get root&#40;&#41;:MutableTreeNode &#123; return _root; &#125; &#160; public function [...]]]></description>
			<content:encoded><![CDATA[<p>写了一个简陋的小程序，将XML解析成AsWing的tree node，便于将XML文档在JTree组件中表现出来，之前一直想继承<code>DefaultTreeModel</code>来实现，不过感觉好像<code>DefaultTreeModel</code>中好多都是private(像根节点root，子类中不能调用的话又要自己实现一边会调用到root的方法)，不能直接使用，但是如果仅实现<code>TreeModel</code>接口，又要把许多<code>DefaultTreeModel</code>中的方法重新写一遍，怎么都没想到更好的办法，就写了这个把XML解析成treeNode的简陋class，大家如果有好的建议请赐教啊 <img src='http://blog.harrspy.com/wp-includes/images/smilies/icon_smile.gif' alt=':smile:' class='wp-smiley' /> </p>
<p>下面是源代码<br />
<span id="more-29"></span></p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #9900cc; font-weight: bold;">package</span> cn<span style="color: #000066; font-weight: bold;">.</span>harryxu<span style="color: #000066; font-weight: bold;">.</span>aswingext<span style="color: #000066; font-weight: bold;">.</span>tree <span style="color: #000000;">&#123;</span>
&nbsp;
<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>aswing<span style="color: #000066; font-weight: bold;">.</span>tree<span style="color: #000066; font-weight: bold;">.</span>DefaultMutableTreeNode<span style="color: #000066; font-weight: bold;">;</span>
<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>aswing<span style="color: #000066; font-weight: bold;">.</span>tree<span style="color: #000066; font-weight: bold;">.</span>MutableTreeNode<span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
<span style="color: #3f5fbf;">/**
 * Parse XML to AsWing tree node.
 *
 * @author harry
 */</span>
<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #9900cc; font-weight: bold;">class</span> SimpleXML2TreeNode <span style="color: #000000;">&#123;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">protected</span> <span style="color: #6699cc; font-weight: bold;">var</span> _root<span style="color: #000066; font-weight: bold;">:</span>MutableTreeNode<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #0033ff; font-weight: bold;">protected</span> <span style="color: #6699cc; font-weight: bold;">var</span> _xml<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">XML</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #0033ff; font-weight: bold;">protected</span> <span style="color: #6699cc; font-weight: bold;">var</span> labelField<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #6699cc; font-weight: bold;">var</span> autoParse<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Boolean</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> <span style="color: #0033ff; font-weight: bold;">get</span> <span style="color: #004993;">root</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span>MutableTreeNode <span style="color: #000000;">&#123;</span>
		<span style="color: #0033ff; font-weight: bold;">return</span> _root<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> <span style="color: #0033ff; font-weight: bold;">set</span> <span style="color: #004993;">root</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">value</span><span style="color: #000066; font-weight: bold;">:</span>MutableTreeNode<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span> <span style="color: #000000;">&#123;</span>
		_root = <span style="color: #004993;">value</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #0033ff; font-weight: bold;">if</span><span style="color: #000000;">&#40;</span>autoParse<span style="color: #000000;">&#41;</span> <span style="color: #004993;">parse</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> <span style="color: #0033ff; font-weight: bold;">set</span> xml<span style="color: #000000;">&#40;</span><span style="color: #004993;">value</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">XML</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span> <span style="color: #000000;">&#123;</span>
		_xml = <span style="color: #004993;">value</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #0033ff; font-weight: bold;">if</span><span style="color: #000000;">&#40;</span>autoParse<span style="color: #000000;">&#41;</span> <span style="color: #004993;">parse</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> <span style="color: #0033ff; font-weight: bold;">get</span> xml<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">XML</span> <span style="color: #000000;">&#123;</span>
		<span style="color: #0033ff; font-weight: bold;">return</span> _xml<span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> SimpleXML2TreeNode<span style="color: #000000;">&#40;</span>xml<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">XML</span><span style="color: #000066; font-weight: bold;">,</span>
            <span style="color: #004993;">root</span><span style="color: #000066; font-weight: bold;">:</span>MutableTreeNode=<span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span>
            labelField<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">String</span>=<span style="color: #990000;">&quot;@label&quot;</span><span style="color: #000066; font-weight: bold;">,</span>
            autoParse<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Boolean</span>=<span style="color: #0033ff; font-weight: bold;">false</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
&nbsp;
		_xml = xml<span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #0033ff; font-weight: bold;">this</span><span style="color: #000066; font-weight: bold;">.</span>labelField = labelField<span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #0033ff; font-weight: bold;">this</span><span style="color: #000066; font-weight: bold;">.</span>autoParse = autoParse<span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #0033ff; font-weight: bold;">this</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">root</span> = <span style="color: #004993;">root</span><span style="color: #000066; font-weight: bold;">||</span>new DefaultMutableTreeNode<span style="color: #000000;">&#40;</span><span style="color: #990000;">&quot;root&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> <span style="color: #004993;">parse</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span> <span style="color: #000000;">&#123;</span>
		removeAllRootChildern<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #004993;">parseXML</span><span style="color: #000000;">&#40;</span>xml<span style="color: #000066; font-weight: bold;">,</span> _root<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> removeAllRootChildern<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span> <span style="color: #000000;">&#123;</span>
		<span style="color: #6699cc; font-weight: bold;">var</span> len<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">int</span> = <span style="color: #004993;">root</span><span style="color: #000066; font-weight: bold;">.</span>getChildCount<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">-</span><span style="color: #000000; font-weight:bold;">1</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #0033ff; font-weight: bold;">for</span> <span style="color: #000000;">&#40;</span><span style="color: #6699cc; font-weight: bold;">var</span> i<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">int</span> = len<span style="color: #000066; font-weight: bold;">;</span> i <span style="color: #000066; font-weight: bold;">&amp;</span>gt<span style="color: #000066; font-weight: bold;">;</span>= <span style="color: #000000; font-weight:bold;">0</span><span style="color: #000066; font-weight: bold;">;</span> i<span style="color: #000066; font-weight: bold;">--</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
			<span style="color: #004993;">root</span><span style="color: #000066; font-weight: bold;">.</span>removeAt<span style="color: #000000;">&#40;</span>i<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">protected</span> <span style="color: #339966; font-weight: bold;">function</span> <span style="color: #004993;">parseXML</span><span style="color: #000000;">&#40;</span>xml<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">XML</span><span style="color: #000066; font-weight: bold;">,</span> node<span style="color: #000066; font-weight: bold;">:</span>MutableTreeNode<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span><span style="color: #000000;">&#123;</span>
		<span style="color: #6699cc; font-weight: bold;">var</span> subnode<span style="color: #000066; font-weight: bold;">:</span>DefaultMutableTreeNode =
				<span style="color: #0033ff; font-weight: bold;">new</span> DefaultMutableTreeNode<span style="color: #000000;">&#40;</span>xml<span style="color: #000000;">&#91;</span>labelField<span style="color: #000000;">&#93;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		node<span style="color: #000066; font-weight: bold;">.</span>insert<span style="color: #000000;">&#40;</span>subnode<span style="color: #000066; font-weight: bold;">,</span> node<span style="color: #000066; font-weight: bold;">.</span>getChildCount<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
		<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">children</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">XMLList</span> = xml<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">children</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #0033ff; font-weight: bold;">for</span> <span style="color: #0033ff; font-weight: bold;">each</span><span style="color: #000000;">&#40;</span><span style="color: #6699cc; font-weight: bold;">var</span> subxml<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">XML</span> <span style="color: #0033ff; font-weight: bold;">in</span> <span style="color: #004993;">children</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
			<span style="color: #004993;">parseXML</span><span style="color: #000000;">&#40;</span>subxml<span style="color: #000066; font-weight: bold;">,</span> subnode<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></div></div>

<p>测试代码：</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #9900cc; font-weight: bold;">package</span> tests
<span style="color: #000000;">&#123;</span>
<span style="color: #0033ff; font-weight: bold;">import</span> cn<span style="color: #000066; font-weight: bold;">.</span>harryxu<span style="color: #000066; font-weight: bold;">.</span>aswingext<span style="color: #000066; font-weight: bold;">.</span>tree<span style="color: #000066; font-weight: bold;">.</span>SimpleXML2TreeNode<span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
<span style="color: #0033ff; font-weight: bold;">import</span> <span style="color: #004993;">flash.events</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">Event</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>aswing<span style="color: #000066; font-weight: bold;">.</span>BorderLayout<span style="color: #000066; font-weight: bold;">;</span>
<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>aswing<span style="color: #000066; font-weight: bold;">.</span>JPanel<span style="color: #000066; font-weight: bold;">;</span>
<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>aswing<span style="color: #000066; font-weight: bold;">.</span>JScrollPane<span style="color: #000066; font-weight: bold;">;</span>
<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>aswing<span style="color: #000066; font-weight: bold;">.</span>JTree<span style="color: #000066; font-weight: bold;">;</span>
<span style="color: #0033ff; font-weight: bold;">import</span> org<span style="color: #000066; font-weight: bold;">.</span>aswing<span style="color: #000066; font-weight: bold;">.</span>tree<span style="color: #000066; font-weight: bold;">.</span>DefaultTreeModel<span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #9900cc; font-weight: bold;">class</span> XMLTreeNodeTest <span style="color: #0033ff; font-weight: bold;">extends</span> JPanel
<span style="color: #000000;">&#123;</span>
	<span style="color: #0033ff; font-weight: bold;">private</span> <span style="color: #6699cc; font-weight: bold;">var</span> xml<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">XML</span> =
&nbsp;
		<span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> XMLTreeNodeTest<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
		<span style="color: #0033ff; font-weight: bold;">super</span><span style="color: #000000;">&#40;</span><span style="color: #0033ff; font-weight: bold;">new</span> BorderLayout<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #6699cc; font-weight: bold;">var</span> xnp<span style="color: #000066; font-weight: bold;">:</span>SimpleXML2TreeNode = <span style="color: #0033ff; font-weight: bold;">new</span> SimpleXML2TreeNode<span style="color: #000000;">&#40;</span>xml<span style="color: #000066; font-weight: bold;">,</span> <span style="color: #0033ff; font-weight: bold;">null</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #990000;">&quot;@name&quot;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		xnp<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">parse</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
		<span style="color: #6699cc; font-weight: bold;">var</span> tree<span style="color: #000066; font-weight: bold;">:</span>JTree = <span style="color: #0033ff; font-weight: bold;">new</span> JTree<span style="color: #000000;">&#40;</span><span style="color: #0033ff; font-weight: bold;">new</span> DefaultTreeModel<span style="color: #000000;">&#40;</span>xnp<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">root</span><span style="color: #000000;">&#41;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		tree<span style="color: #000066; font-weight: bold;">.</span>setRootVisible<span style="color: #000000;">&#40;</span><span style="color: #0033ff; font-weight: bold;">false</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
		<span style="color: #6699cc; font-weight: bold;">var</span> sp<span style="color: #000066; font-weight: bold;">:</span>JScrollPane = <span style="color: #0033ff; font-weight: bold;">new</span> JScrollPane<span style="color: #000000;">&#40;</span>tree<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		append<span style="color: #000000;">&#40;</span>sp<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
		<span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">Event</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">ADDED_TO_STAGE</span><span style="color: #000066; font-weight: bold;">,</span> __addToStage<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
	<span style="color: #0033ff; font-weight: bold;">private</span> <span style="color: #339966; font-weight: bold;">function</span> __addToStage<span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">:</span><span style="color: #004993;">Event</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span> <span style="color: #000000;">&#123;</span>
		setSizeWH<span style="color: #000000;">&#40;</span><span style="color: #004993;">stage</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">stageWidth</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">stage</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">stageHeight</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		setVisible<span style="color: #000000;">&#40;</span><span style="color: #0033ff; font-weight: bold;">true</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		revalidate<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
&nbsp;
<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span>
&nbsp;
<span style="color: #3f5fbf;">/*
you can use these code to run it
&nbsp;
var test:Component;
&nbsp;
test = new XMLTreeNodeTest();
addChild(test);
*/</span></pre></div></div>

<p><a href="http://harryzhxu.googlepages.com/SimpleXML2TreeNodeTest.swf" rel="lightbox">http://harryzhxu.googlepages.com/SimpleXML2TreeNodeTest.swf</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/aswing-ext-simplexml2treenode/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>瞎捣腾了一个AsWing皮肤</title>
		<link>http://blog.harrspy.com/aswing-tenerlaf-preview</link>
		<comments>http://blog.harrspy.com/aswing-tenerlaf-preview#comments</comments>
		<pubDate>Sun, 25 Nov 2007 05:44:49 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[LookAndFeel]]></category>
		<category><![CDATA[RIA]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/aswing-tenerlaf-preview</guid>
		<description><![CDATA[搞了一个AsWing的皮肤， 当然，肯定不是我设计的 是我根据一个Windows XP的主题，Tener VS，在flash中模仿的，感觉这个主题比较简洁，模仿起来也稍简单，所以选了这个主题弄成AsWing的皮肤。 大家可以预览试用下 http://harryxu.cn/demo/aswing/ComSetTener.swf 不过其中可能会有些小bug，我会提交给AsWing的开发者iiley，在他审核后，大家就可从AsWing的官方下载使用了 。]]></description>
			<content:encoded><![CDATA[<p>搞了一个AsWing的皮肤， 当然，肯定不是我设计的<br />
是我根据一个Windows XP的主题，<a href="http://mohsinnaqi.deviantart.com/art/Tener-VS-44815352" target="_blank">Tener VS</a>，在flash中模仿的，感觉这个主题比较简洁，模仿起来也稍简单，所以选了这个主题弄成AsWing的皮肤。<br />
大家可以预览试用下<br />
<a href="http://harryxu.cn/demo/aswing/ComSetTener.swf" target="_blank">http://harryxu.cn/demo/aswing/ComSetTener.swf</a></p>
<p>不过其中可能会有些小bug，我会提交给AsWing的开发者iiley，在他审核后，大家就可从AsWing的官方下载使用了 <img src='http://blog.harrspy.com/wp-includes/images/smilies/icon_mrgreen.gif' alt=':mrgreen:' class='wp-smiley' />  。</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/aswing-tenerlaf-preview/feed</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>AsWing的新皮肤 &#8211; Orange</title>
		<link>http://blog.harrspy.com/new-aswing-laf-orange</link>
		<comments>http://blog.harrspy.com/new-aswing-laf-orange#comments</comments>
		<pubDate>Wed, 14 Nov 2007 12:28:00 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[LookAndFeel]]></category>
		<category><![CDATA[RIA]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/aswing%e7%9a%84%e6%96%b0%e7%9a%ae%e8%82%a4-orange</guid>
		<description><![CDATA[AsWing推出了一款新的皮肤 Orange，以橙色为主，非常清新。 大家可以点击下面的链接预览下 http://demo.aswing.org/showcase/ComSet_OrangeSkin.swf]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.aswing.org/" target="_blank">AsWing</a>推出了一款新的皮肤 <a href="http://www.aswing.org/?p=195">Orange</a>，以橙色为主，非常清新。<br />
大家可以点击下面的链接预览下<br />
<a href="http://demo.aswing.org/showcase/ComSet_OrangeSkin.swf">http://demo.aswing.org/showcase/ComSet_OrangeSkin.swf</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/new-aswing-laf-orange/feed</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Yupoo Flash Browser简单更新</title>
		<link>http://blog.harrspy.com/yupooflashbrowser-demo2-and-plan1</link>
		<comments>http://blog.harrspy.com/yupooflashbrowser-demo2-and-plan1#comments</comments>
		<pubDate>Wed, 31 Oct 2007 12:01:45 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[yupoo]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/yupooflashbrowser-demo2-and-plan1</guid>
		<description><![CDATA[业余时间比较少，人也比较懒 ，就加了loading提示和原图预览功能 预览地址 ： http://harryxu.cn/demo/yfbDemo2.swf Yupoo测试帐号： iceorange （随便找的） 源代码版本库地址 http://harryxu.googlecode.com/svn/trunk/yupooflashbrowser/ 可以通过svn客户端取出 现在这个版本已经基本达到我最初想要的功能了，但是决定持续的完善这个程序。 计划下一次加入的功能 UI方面: 增强连接复制功能，比如生成html链接，ubb代码等&#8230; 加入分页，现在这个只显示前100张 &#8211; - 增强搜索，多标签，关键字搜索等&#8230; 其他，细节，用户体验方面的改进等&#8230;. &#038; 没想好的 API方面 目前除了Yupoo还准备支持google的 picasaweb和flickr，可 能都会自己写API &#8211; - 至于什么时候开工，就比较难说料，在现在程序的基础上再继续写下去是不行了，估计要全部重构 完工更是不知道要等到猴年马月]]></description>
			<content:encoded><![CDATA[<p>业余时间比较少，人也比较懒 ，就加了loading提示和原图预览功能<br />
<br />
预览地址 ： <a href="http://harryxu.cn/demo/yfbDemo2.swf" target="_blank">http://harryxu.cn/demo/yfbDemo2.swf</a><br />
Yupoo测试帐号： iceorange （随便找的）<br />
源代码版本库地址 http://harryxu.googlecode.com/svn/trunk/yupooflashbrowser/ 可以通过svn客户端取出<br />
<br />
现在这个版本已经基本达到我最初想要的功能了，但是决定持续的完善这个程序。</p>
<p>计划下一次加入的功能<br />
UI方面:<br />
  增强连接复制功能，比如生成html链接，ubb代码等&#8230;<br />
  加入分页，现在这个只显示前100张 &#8211; -<br />
  增强搜索，多标签，关键字搜索等&#8230;<br />
  其他，细节，用户体验方面的改进等&#8230;.  &#038;  没想好的<br />
<br />
API方面<br />
  目前除了Yupoo还准备支持google的 <a href="http://picasaweb.google.com" target="_blank">picasaweb</a>和<a href="http://flickr.com" target="_blank">flickr</a>，可   能都会自己写API &#8211; -<br />
  至于什么时候开工，就比较难说料，在现在程序的基础上再继续写下去是不行了，估计要全部重构<br />
  完工更是不知道要等到猴年马月 <img src='http://blog.harrspy.com/wp-includes/images/smilies/icon_twisted.gif' alt=':twisted:' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/yupooflashbrowser-demo2-and-plan1/feed</wfw:commentRss>
		<slash:comments>11</slash:comments>
		</item>
		<item>
		<title>准备写一个 Yupoo Flash Browser</title>
		<link>http://blog.harrspy.com/yupoo-flash-broswer-on-the-way</link>
		<comments>http://blog.harrspy.com/yupoo-flash-broswer-on-the-way#comments</comments>
		<pubDate>Mon, 22 Oct 2007 03:23:37 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[yupoo]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/%e5%87%86%e5%a4%87%e5%86%99%e4%b8%80%e4%b8%aa-yupoo-flash-browser</guid>
		<description><![CDATA[平时一直用Yupoo提供的照片分享服务存放拍的照片或一些图片，使用此类图片服务的人很多都会将图片外链到自己的网页中 但是Yupoo上要复制一个图片的地址要点击好几次链接才能到复制图片外链地址的页面，少的时候还好，要是需要复制很多图片的地址，操作起来不免有些麻烦，所幸Yupoo提供了web service开发接口，最近拍了不少照片，想发到自己的论坛上，由于找链接太麻烦，本想搞一个简单的flash界面来快速的复制链接，后来写着写着，发现等于是要先写一个Yupoo的开发框架，花了不少时间。 现在发觉如果用AS3写一个Flash界面的Yupoo图片浏览器还是挺实用的，所以准备写一个完善一点的程序，也算是复习AS3了，呵呵，好久没用，基本上忘的差不多了&#8230;.. 下面是一个Demo，基本没啥功能，只要在用户名中输入你的Yupoo用户名，点刷新，即可显示图片，鼠标移到图片上后出现的按钮条，就是用于快速复制图片连接的功能了，以后将会继续完善该程序，比如，分页，loading效果，放大图片，等等等等细节方面 嘿嘿，UI界面当然是用最牛的AsWing啦，hoho P.S. 可能会有部分照片无法载入，这是因为Yupoo某几个照片服务器目录中还未加入供flash跨域访问的策略文件，只要他们那边加上就会好的 [kml_flashembed movie="http://harryxu.cn/demo/yfbDemo1.swf" height="500" width="500" /] 由于功能不全，并且代码都比较混乱，所以暂时不提供源代码&#8230;]]></description>
			<content:encoded><![CDATA[<p>平时一直用<a href="http://www.yupoo.com/" about="_blank">Yupoo</a>提供的照片分享服务存放拍的照片或一些图片，使用此类图片服务的人很多都会将图片外链到自己的网页中<br />
但是Yupoo上要复制一个图片的地址要点击好几次链接才能到复制图片外链地址的页面，少的时候还好，要是需要复制很多图片的地址，操作起来不免有些麻烦，所幸Yupoo提供了web service开发接口，最近拍了不少照片，想发到自己的论坛上，由于找链接太麻烦，本想搞一个简单的flash界面来快速的复制链接，后来写着写着，发现等于是要先写一个Yupoo的开发框架，花了不少时间。<br />
现在发觉如果用AS3写一个Flash界面的Yupoo图片浏览器还是挺实用的，所以准备写一个完善一点的程序，也算是复习AS3了，呵呵，好久没用，基本上忘的差不多了&#8230;..</p>
<p>下面是一个Demo，基本没啥功能，只要在用户名中输入你的Yupoo用户名，点刷新，即可显示图片，鼠标移到图片上后出现的按钮条，就是用于快速复制图片连接的功能了，以后将会继续完善该程序，比如，分页，loading效果，放大图片，等等等等细节方面<br />
嘿嘿，UI界面当然是用最牛的<a href="http://aswing.org" about="_blank">AsWing</a>啦，hoho</p>
<p>P.S. 可能会有部分照片无法载入，这是因为Yupoo某几个照片服务器目录中还未加入供flash跨域访问的策略文件，只要他们那边加上就会好的 <img src='http://blog.harrspy.com/wp-includes/images/smilies/icon_cool.gif' alt=':cool:' class='wp-smiley' /> </p>
<p>[kml_flashembed movie="http://harryxu.cn/demo/yfbDemo1.swf" height="500" width="500" /]</p>
<p>由于功能不全，并且代码都比较混乱，所以暂时不提供源代码&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/yupoo-flash-broswer-on-the-way/feed</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>AsWing 终于推出可视化布局工具 &#8211; GUI Builder</title>
		<link>http://blog.harrspy.com/aswing-gui-builder-alpha</link>
		<comments>http://blog.harrspy.com/aswing-gui-builder-alpha#comments</comments>
		<pubDate>Wed, 26 Sep 2007 15:09:22 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[RIA]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/?p=139</guid>
		<description><![CDATA[AsWing的开发者iiley通过几天的努力，为我们带来了AsWing的Gui Builder，而这个工具本身就是通过AsWing来构建UI界面的，可见AsWing之强大，Gui Builder 使用了当前流行的AIR技术来实现保存和读取文件，它生成的是一个描述UI结构的XML文档，可以保存该XML文档，以后可以在Gui Builder中打开该文档，即可还原界面布局，当完成了界面设计后可以点击生成AS代码即可生成完整的AS3源代码，这个工具大大降低了使用AsWing的门槛，并且也节省了大量的编码时间。 目前Gui Builder还是一个比较初级的版本，将来还会不断的完善，值得我们期待啊 预览版下载地址（需AIR环境支持）: http://aswing.googlecode.com/files/GuiBuilder_alpha6.air 官方介绍: http://www.aswing.org/?p=179 P.S. 我建立了一个AsWing的Google讨论组，欢迎大家前来讨论 http://groups.google.com/group/aswingframework]]></description>
			<content:encoded><![CDATA[<p>AsWing的开发者iiley通过几天的努力，为我们带来了AsWing的Gui Builder，而这个工具本身就是通过AsWing来构建UI界面的，可见AsWing之强大，Gui Builder 使用了当前流行的AIR技术来实现保存和读取文件，它生成的是一个描述UI结构的XML文档，可以保存该XML文档，以后可以在Gui Builder中打开该文档，即可还原界面布局，当完成了界面设计后可以点击生成AS代码即可生成完整的AS3源代码，这个工具大大降低了使用AsWing的门槛，并且也节省了大量的编码时间。</p>
<p>目前Gui Builder还是一个比较初级的版本，将来还会不断的完善，值得我们期待啊 <img src='http://blog.harrspy.com/wp-includes/images/smilies/icon_smile.gif' alt=':smile:' class='wp-smiley' /><br />
预览版下载地址（需<a href="http://labs.adobe.com/downloads/air.html">AIR</a>环境支持）:<br />
<a href="http://aswing.googlecode.com/files/GuiBuilder_alpha6.air">http://aswing.googlecode.com/files/GuiBuilder_alpha6.air</a><br />
官方介绍:<br />
<a href="http://www.aswing.org/?p=179">http://www.aswing.org/?p=179</a></p>
<p>P.S. 我建立了一个AsWing的Google讨论组，欢迎大家前来讨论<br />
<a href="http://groups.google.com/group/aswingframework">http://groups.google.com/group/aswingframework </a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/aswing-gui-builder-alpha/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AsWing tree组件实例</title>
		<link>http://blog.harrspy.com/aswing-tree-demo</link>
		<comments>http://blog.harrspy.com/aswing-tree-demo#comments</comments>
		<pubDate>Wed, 08 Aug 2007 03:31:01 +0000</pubDate>
		<dc:creator>harry</dc:creator>
				<category><![CDATA[harry]]></category>
		<category><![CDATA[AsWing]]></category>
		<category><![CDATA[RIA]]></category>
		<category><![CDATA[tree]]></category>

		<guid isPermaLink="false">http://harryxu.cn/blog/?p=131</guid>
		<description><![CDATA[学习了一下AsWing的tree组件，感觉很强啊，可扩展性超强，下面是我按教程做的练习。 具体教程可以看这个How to Use Trees，是Java Swing的一个教程，使用起来几乎和AsWing一样。 [kml_flashembed movie="http://harryxu.cn/blog/wp-content/uploads/2007/08/treedemo.swf" height="400" width="400" /] 源代码下载]]></description>
			<content:encoded><![CDATA[<p>学习了一下AsWing的tree组件，感觉很强啊，可扩展性超强，下面是我按教程做的练习。<br />
具体教程可以看这个<a href="http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html" target="blank">How to Use Trees</a>，是Java Swing的一个教程，使用起来几乎和AsWing一样。<br />
<span id="more-49"></span><br />
[kml_flashembed movie="http://harryxu.cn/blog/wp-content/uploads/2007/08/treedemo.swf" height="400" width="400" /]<br />
<a href="http://harryxu.cn/demo/aswing/tryAsWingTree.zip">源代码下载</a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.harrspy.com/aswing-tree-demo/feed</wfw:commentRss>
		<slash:comments>20</slash:comments>
		</item>
	</channel>
</rss>
