﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-键盘上的舞者-随笔分类-JavaFX</title><link>http://www.blogjava.net/chenweionline/category/41672.html</link><description>像写情书一样Coding...</description><language>zh-cn</language><lastBuildDate>Mon, 26 Apr 2010 06:00:12 GMT</lastBuildDate><pubDate>Mon, 26 Apr 2010 06:00:12 GMT</pubDate><ttl>60</ttl><item><title>JavaFX进行HTTP Basic认证</title><link>http://www.blogjava.net/chenweionline/archive/2010/04/25/319299.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Sat, 24 Apr 2010 18:49:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2010/04/25/319299.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/319299.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2010/04/25/319299.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/319299.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/319299.html</trackback:ping><description><![CDATA[最近用JavaFX写一个应用调用Internet上的开放API时需要进行<a>HTTP Basic</a>认证，JavaFX提供了一个类HttpRequest用于发送Web服务的请求，类HttpHeader顾名思义就是用来表示HTTP请求的"Header"了。HttpHeader提供了一个很方便的方法用来创建HTTP Basic认证需要的用户名和密码"Header":<br />
<div style="background-color: rgb(238, 238, 238); font-size: 13px; border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;basicAuth(username:&nbsp;java.lang.String,&nbsp;password:&nbsp;java.lang.String)&nbsp;:&nbsp;HttpHeader <br />
</span></div>
下面就看一下如何使用JavaFX编写进行HTTP Basic认证的代码：<br />
<div style="background-color: rgb(238, 238, 238); font-size: 13px; border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;var&nbsp;user&nbsp;=&nbsp;"user";<br />
</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;var&nbsp;password&nbsp;=&nbsp;"password";</span><span style="color: rgb(0, 128, 0);"><br />
</span><span style="color: rgb(0, 0, 0);">HttpRequest{<br />
&nbsp;&nbsp;&nbsp;&nbsp;location:&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;url</span><span style="color: rgb(0, 128, 0);"><br />
</span><span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;headers:&nbsp;HttpHeader.basicAuth(user,&nbsp;password)<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 128, 0);">//</span><span style="color: rgb(0, 128, 0);">&nbsp;<img src="http://www.blogjava.net/Images/dot.gif" alt="" /><img src="http://www.blogjava.net/Images/dot.gif" alt="" /></span><span style="color: rgb(0, 128, 0);"><br />
</span><span style="color: rgb(0, 0, 0);">}.start();</span></div>
<br />
<img src ="http://www.blogjava.net/chenweionline/aggbug/319299.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2010-04-25 02:49 <a href="http://www.blogjava.net/chenweionline/archive/2010/04/25/319299.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaFX开发模仿Mac OS的MagicalDock（鱼眼效果）</title><link>http://www.blogjava.net/chenweionline/archive/2010/04/09/317884.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Fri, 09 Apr 2010 09:58:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2010/04/09/317884.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/317884.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2010/04/09/317884.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/317884.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/317884.html</trackback:ping><description><![CDATA[<div><img src="http://www.blogjava.net/images/blogjava_net/chenweionline/Snapshot/magicaldock.jpg" alt="" border="0" /></div>
<div><a href="http://www.jqueen.org/magicaldock/MagicalDock.jnlp"><img src="http://www.blogjava.net/images/blogjava_net/chenweionline/launch.gif" alt="launch" width="88" height="24" /></a><br />
</div>
<div>MagicalDock修改了上个版本的设计，目前的思路是使用2个容器类Container和Flow完成布局，Flow为Node提供水平布局，Container是Flow的容器。</div>
<div>当鼠标移动到Node上，Node大小变化时会改变Flow的尺寸范围，这时动态调整Flow在Container中的位置完成水平位移效果并且将锚定Node的底部使一组Node在变化时都能够底线对齐。</div>
<div>source code:<a href="http://kenai.com/projects/magicaldock" target="_blank">http://kenai.com/projects/magicaldock</a></div>

<img src ="http://www.blogjava.net/chenweionline/aggbug/317884.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2010-04-09 17:58 <a href="http://www.blogjava.net/chenweionline/archive/2010/04/09/317884.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SOSHaiti(Preview) - Game In JavaFX</title><link>http://www.blogjava.net/chenweionline/archive/2010/03/12/315309.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Fri, 12 Mar 2010 14:25:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2010/03/12/315309.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/315309.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2010/03/12/315309.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/315309.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/315309.html</trackback:ping><description><![CDATA[<div>开发中的一个版本，先睹为快，希望有更多的开发者关注JavaFX技术。</div>
<div><img src="http://www.blogjava.net/images/blogjava_net/chenweionline/Snapshot/soshaiti.jpg" alt="" width="400" height="251" /></div>
<div><a href="http://www.jqueen.org/soshaiti/SOSHaiti_browser.jnlp"><img src="http://www.blogjava.net/images/blogjava_net/chenweionline/launch.gif" alt="launch" width="88" height="24" /></a><a href="http://widgetfx.org/dock/launch.jnlp?arg=http://www.jqueen.org/soshaiti/SOSHaiti.jnlp"> <img alt="" src="http://www.blogjava.net/images/blogjava_net/chenweionline/WidgetFX-launch-icon.png" width="82" height="25" /></a></div>
<div>source code:<a target="_blank" href="http://kenai.com/projects/soshaiti">http://kenai.com/projects/soshaiti</a></div>
<div><hr />
</div>
<div><span style="color: red;">2010年3月22日更新：</span></div>
<div>1.修正游戏结束时不显示得分的BUG</div>
<div>2.增加一个Menu菜单，在游戏进行中可暂停游戏</div>
<div>3.添加物体间的碰撞特性（使用JBox2D）</div>
<img src ="http://www.blogjava.net/chenweionline/aggbug/315309.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2010-03-12 22:25 <a href="http://www.blogjava.net/chenweionline/archive/2010/03/12/315309.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaFX编译器编译重载方法的一处BUG</title><link>http://www.blogjava.net/chenweionline/archive/2010/02/25/313959.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Thu, 25 Feb 2010 15:35:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2010/02/25/313959.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/313959.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2010/02/25/313959.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/313959.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/313959.html</trackback:ping><description><![CDATA[直接看测试代码吧，一共2个类：BugTest.fx和A.fx，SDK版本是1.2.3。
<div>
<div style="background-color: #eeeeee; font-size: 13px; border-left-color: #cccccc; padding: 4px 5px 4px 4px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #008000;">/*</span><span style="color: #008000;"><br />
&nbsp;*&nbsp;BugTest.fx<br />
&nbsp;*<br />
&nbsp;*&nbsp;Created&nbsp;on&nbsp;2010-2-25,&nbsp;22:05:11<br />
&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">package</span><span style="color: #000000;">&nbsp;org.jqueen.fx.bug;<br />
<br />
</span><span style="color: #008000;">/**</span><span style="color: #008000;"><br />
&nbsp;*&nbsp;</span><span style="color: #808080;">@author</span><span style="color: #008000;">&nbsp;Leon<br />
&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;BugTest&nbsp;{<br />
<br />
</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;取消该方法注释编译将抛出异常<br />
</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;test(a:&nbsp;A):&nbsp;Void&nbsp;{<br />
</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test(5);<br />
</span><span style="color: #008000;">//</span><span style="color: #008000;">&nbsp;&nbsp;&nbsp;&nbsp;}</span><span style="color: #008000;"><br />
</span><span style="color: #000000;"><br />
&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;test(s:&nbsp;String):&nbsp;Void&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test(</span><span style="color: #000000;">5</span><span style="color: #000000;">);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;test(i:&nbsp;Integer):&nbsp;Void&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
}</span></div>
</div>
<div>
<div style="font-size: 13px; border-left-color: #cccccc; padding: 4px 5px 4px 4px; width: 98%; background-color: #eeeeee;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #008000;">/*</span><span style="color: #008000;"><br />
&nbsp;*&nbsp;A.fx<br />
&nbsp;*<br />
&nbsp;*&nbsp;Created&nbsp;on&nbsp;2010-2-25,&nbsp;22:10:45<br />
&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br />
<br />
</span><span style="color: #0000ff;">package</span><span style="color: #000000;">&nbsp;org.jqueen.fx.bug;<br />
<br />
</span><span style="color: #008000;">/**</span><span style="color: #008000;"><br />
&nbsp;*&nbsp;</span><span style="color: #808080;">@author</span><span style="color: #008000;">&nbsp;Leon<br />
&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br />
<br />
</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;mixin&nbsp;</span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;A&nbsp;{</span><span style="color: #000000;">}</span></div>
</div>
<div>BugTest里实现了3个带输入参数的重载方法，第一个方法的参数是自定义类型A，<strong>A被声明为mixin</strong>，后2个的参数是原始类型。只有在第一个方法被注释的情况下该类才可以被编译通过，否则编译器会抛出异常:</div>
<div>
<div>An exception has occurred in the OpenJavafx compiler. Please file a bug at the Openjfx-compiler issues home (https://openjfx-compiler.dev.java.net/Issues) after checking for duplicates. Include the following diagnostic in your report and, if possible, the source code which triggered this problem. &nbsp;Thank you.</div>
<div>java.lang.ClassCastException: com.sun.tools.javac.code.Symbol$ClassSymbol</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.code.JavafxTypes.asSuper(JavafxTypes.java:202)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javac.code.Types.isSubtypeUnchecked(Types.java:305)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.argumentsAcceptable(JavafxResolve.java:421)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.rawInstantiate(JavafxResolve.java:387)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.selectBest(JavafxResolve.java:711)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findMemberWithoutAccessChecks(JavafxResolve.java:952)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findMember(JavafxResolve.java:906)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findMember(JavafxResolve.java:886)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findVar(JavafxResolve.java:567)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findIdent(JavafxResolve.java:1228)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.resolveIdent(JavafxResolve.java:1423)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.visitIdent(JavafxAttr.java:506)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.tree.JFXIdent.accept(JFXIdent.java:52)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:280)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:265)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribExpr(JavafxAttr.java:311)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.visitFunctionInvocation(JavafxAttr.java:2239)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.tree.JFXFunctionInvocation.accept(JFXFunctionInvocation.java:53)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:280)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:265)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribExpr(JavafxAttr.java:303)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.visitBlockExpression(JavafxAttr.java:1373)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.tree.JFXBlock.accept(JFXBlock.java:83)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:280)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:265)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribExpr(JavafxAttr.java:311)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.finishFunctionDefinition(JavafxAttr.java:1863)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxMemberEnter$SymbolCompleter.complete(JavafxMemberEnter.java:646)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javac.code.Symbol.complete(Symbol.java:400)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.visitFunctionDefinition(JavafxAttr.java:1658)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.tree.JFXFunctionDefinition.accept(JFXFunctionDefinition.java:93)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:280)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:265)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribExpr(JavafxAttr.java:321)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxMemberEnter$SymbolCompleter.complete(JavafxMemberEnter.java:643)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javac.code.Symbol.complete(Symbol.java:400)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findMemberWithoutAccessChecks(JavafxResolve.java:943)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findMember(JavafxResolve.java:906)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findMember(JavafxResolve.java:886)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findVar(JavafxResolve.java:567)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.findIdent(JavafxResolve.java:1228)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxResolve.resolveIdent(JavafxResolve.java:1423)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.visitIdent(JavafxAttr.java:506)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.tree.JFXIdent.accept(JFXIdent.java:52)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:280)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:265)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribExpr(JavafxAttr.java:311)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.visitFunctionInvocation(JavafxAttr.java:2239)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.tree.JFXFunctionInvocation.accept(JFXFunctionInvocation.java:53)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:280)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:265)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribExpr(JavafxAttr.java:303)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.visitBlockExpression(JavafxAttr.java:1373)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.tree.JFXBlock.accept(JFXBlock.java:83)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:280)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:265)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribExpr(JavafxAttr.java:311)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.finishFunctionDefinition(JavafxAttr.java:1863)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxMemberEnter$SymbolCompleter.complete(JavafxMemberEnter.java:646)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javac.code.Symbol.complete(Symbol.java:400)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.visitFunctionDefinition(JavafxAttr.java:1658)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.tree.JFXFunctionDefinition.accept(JFXFunctionDefinition.java:93)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:280)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribTree(JavafxAttr.java:265)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribDecl(JavafxAttr.java:334)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribClassBody(JavafxAttr.java:3696)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribClass(JavafxAttr.java:2808)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.comp.JavafxAttr.attribClass(JavafxAttr.java:2763)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.main.JavafxCompiler.attribute(JavafxCompiler.java:936)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.main.JavafxCompiler.compile2(JavafxCompiler.java:782)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.main.JavafxCompiler.compile(JavafxCompiler.java:685)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.main.Main.compile(Main.java:624)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.main.Main.compile(Main.java:312)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.Main.compile(Main.java:84)</div>
<div>&nbsp;&nbsp; &nbsp; &nbsp; &nbsp;at com.sun.tools.javafx.Main.main(Main.java:69)</div>
</div>
<img src ="http://www.blogjava.net/chenweionline/aggbug/313959.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2010-02-25 23:35 <a href="http://www.blogjava.net/chenweionline/archive/2010/02/25/313959.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaFX项目发布时虚拟机参数设置方法</title><link>http://www.blogjava.net/chenweionline/archive/2009/12/21/306828.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Mon, 21 Dec 2009 09:02:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2009/12/21/306828.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/306828.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2009/12/21/306828.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/306828.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/306828.html</trackback:ping><description><![CDATA[我一直是使用NetBeans IDE开发JavaFX项目，JavaFX项目编译后会在项目目录下建立一个dist文件夹，文件夹包含你的程序和另外3个发布文件，发布文件分别是XXX.html、XXX.jnlp和XXX_browser.jnlp，如果需要设置JavaFX程序运行时的虚拟机参数，那么可以根据你的发布方式选择在XXX.jnlp或者XXX_browser.jnlp里做出修改,它们都是标准的Java网络加载协议文件。<br />
<br />
例如，我选择把应用发布到浏览器，那么我使用文本编辑器打开文件XXX_browser.jnlp，在&lt;resources&gt;节点下默认有一个节点<strong>&lt;j2se version="1.5+"/&gt;</strong>用于描述程序运行需要的JRE版本，我们把它修改为<strong>&lt;j2se version="1.5+" java-vm-args="-Xmx256m" /&gt;</strong>，这样，我们的应用在运行时就可以使用最大256m的内存了。同理，可以设置更多的虚拟机参数，就不一一举例了。<br />
<br />
<img src ="http://www.blogjava.net/chenweionline/aggbug/306828.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2009-12-21 17:02 <a href="http://www.blogjava.net/chenweionline/archive/2009/12/21/306828.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaFX实现一个简单的模态窗口</title><link>http://www.blogjava.net/chenweionline/archive/2009/12/19/306629.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Fri, 18 Dec 2009 18:45:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2009/12/19/306629.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/306629.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2009/12/19/306629.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/306629.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/306629.html</trackback:ping><description><![CDATA[JavaFX直到目前最新的1.2.1版本里没有提供模态窗口或着对话框，我在项目里通过扩展Control自己实现了一个简单的模态窗口，控件由2个类Window.fx和WindowSkin.fx组成，在WindowSkin里实现了Skin的<span style="color: #000000;">抽象方法contains，在模态下始终返回true。</span><br />
<br />
下面是控件的源码和一个演示demo。<br />
<br />
Window.fx<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">package</span><span style="color: #000000;">&nbsp;org.jqueen.fx.scene.control;<br />
<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;javafx.scene.Node;<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;javafx.scene.image.Image;<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;javafx.scene.control.Control;<br />
<br />
</span><span style="color: #008000;">/**</span><span style="color: #008000;"><br />
&nbsp;*&nbsp;</span><span style="color: #808080;">@author</span><span style="color: #008000;">&nbsp;Leon&nbsp;Chen<br />
&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;Window&nbsp;</span><span style="color: #0000ff;">extends</span><span style="color: #000000;">&nbsp;Control&nbsp;{<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;var&nbsp;modal:&nbsp;Boolean;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;var&nbsp;background:&nbsp;Image;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;var&nbsp;content:&nbsp;Node[];<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;override&nbsp;</span><span style="color: #0000ff;">protected</span><span style="color: #000000;">&nbsp;function&nbsp;create():&nbsp;Node&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;skin&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;WindowSkin&nbsp;{};<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">super</span><span style="color: #000000;">.create();<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</span></div>
<br />
WindowSkin.fx<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">package</span><span style="color: #000000;">&nbsp;org.jqueen.fx.scene.control;<br />
<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;javafx.scene.control.Skin;<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;javafx.scene.Group;<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;javafx.scene.image.ImageView;<br />
<br />
</span><span style="color: #008000;">/**</span><span style="color: #008000;"><br />
&nbsp;*&nbsp;</span><span style="color: #808080;">@author</span><span style="color: #008000;">&nbsp;Leon&nbsp;Chen<br />
&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;"><br />
</span><span style="color: #0000ff;">package</span><span style="color: #000000;"> </span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;WindowSkin&nbsp;</span><span style="color: #0000ff;">extends</span><span style="color: #000000;">&nbsp;Skin&nbsp;{<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;def&nbsp;windowControl&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;bind&nbsp;control&nbsp;as&nbsp;Window;<br />
&nbsp;&nbsp;&nbsp; def bounds : Bounds = bind windowControl.boundsInLocal;<br />
&nbsp;&nbsp;&nbsp;&nbsp;def&nbsp;background&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;ImageView&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;image:&nbsp;bind&nbsp;windowControl.background<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;};<br />
&nbsp;&nbsp;&nbsp;&nbsp;def&nbsp;content&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;bind&nbsp;windowControl.content;<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;init&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;node&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;Group&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;content:&nbsp;bind[background,&nbsp;content]<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;override&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;function&nbsp;intersects(localX:&nbsp;Number,&nbsp;localY:&nbsp;Number,&nbsp;localWidth:&nbsp;Number,&nbsp;localHeight:&nbsp;Number):&nbsp;Boolean&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #000000;">bounds</span><span style="color: #000000;">.intersects(localX,&nbsp;localY,&nbsp;localWidth,&nbsp;localHeight);<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;override&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;function&nbsp;contains(localX:&nbsp;Number,&nbsp;localY:&nbsp;Number):&nbsp;Boolean&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">if</span><span style="color: #000000;">&nbsp;(windowControl.modal)&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">true</span><span style="color: #000000;">;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;</span><span style="color: #0000ff;">else</span><span style="color: #000000;">&nbsp;{<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;"> </span><span style="color: #000000;">bounds</span><span style="color: #000000;">.contains(localX,&nbsp;localY);<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}<br />
&nbsp;&nbsp;&nbsp;&nbsp;}<br />
}</span></div>
<br />
<a href="http://222.185.229.91:8080/Window/dist/Window_browser.jnlp"><img src="http://www.blogjava.net/images/blogjava_net/chenweionline/Snapshot/ModalWindow.jpg" alt="" width="300" border="0" height="200" /></a><br />
<br />
点击图片可运行程序，非模态时背景可以监听到鼠标事件。<br />
<br />
<img src ="http://www.blogjava.net/chenweionline/aggbug/306629.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2009-12-19 02:45 <a href="http://www.blogjava.net/chenweionline/archive/2009/12/19/306629.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaFX实现鱼眼菜单 v0.1</title><link>http://www.blogjava.net/chenweionline/archive/2009/12/06/304896.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Sat, 05 Dec 2009 18:27:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2009/12/06/304896.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/304896.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2009/12/06/304896.html#Feedback</comments><slash:comments>3</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/304896.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/304896.html</trackback:ping><description><![CDATA[<a href="http://222.185.229.91:8080/FisheyeMenu/dist/FisheyeMenu_browser.jnlp"><img alt="FisheyeMenu" src="http://jqueen-group.googlegroups.com/web/FisheyeMenuBar_v0.1.jpg?gda=7QNgfEoAAAAvFKIJkfbNB3DbIDyQmzglfciatKw2aOm-QiBuTP6taxwh9l0r0qnSiukcv7fnrgLLM-fWiHkExTidjAK39RR6_e3Wg0GnqfdKOwDqUih1tA&amp;gsc=RuBc3BYAAACLJFA0CwXKIQ93cFn3HC7vu4w3FxcUuKmQnM9jeHwPGA" width="589" height="160" /></a><br />
点击图片可运行程序<br />
<br />
<img src ="http://www.blogjava.net/chenweionline/aggbug/304896.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2009-12-06 02:27 <a href="http://www.blogjava.net/chenweionline/archive/2009/12/06/304896.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Inkscape提供将绘制保存为JavaFX的支持</title><link>http://www.blogjava.net/chenweionline/archive/2009/12/03/304686.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Thu, 03 Dec 2009 11:39:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2009/12/03/304686.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/304686.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2009/12/03/304686.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/304686.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/304686.html</trackback:ping><description><![CDATA[<a href="http://www.inkscape.org/">Inkscape</a>是一个基于标准的SVG文件格式的开源矢量图编辑器，在最新的0.47版本里添加了将绘制保存为JavaFX的支持。<br />
它将所有的绘制保存在一个继承自CustomNode的JavaFX源文件里，目前只支持保存JavaFX源文件（.fx），不支持FXZ，不支持动画。（可能以后也不会支持动画，毕竟不是专注JavaFX的设计工具<img src="/CuteSoft_Client/CuteEditor/images/emsad.gif" alt="" align="absmiddle" border="0" />）<br />
<img alt="" src="http://inkscape.org/screenshots/gallery/inkscape-0.47-photorealism.png" width="600" height="375" /><br />
<img src ="http://www.blogjava.net/chenweionline/aggbug/304686.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2009-12-03 19:39 <a href="http://www.blogjava.net/chenweionline/archive/2009/12/03/304686.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>使用JavaFX时间轴（Timeline）编写的等待动画</title><link>http://www.blogjava.net/chenweionline/archive/2009/10/19/298897.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Mon, 19 Oct 2009 13:39:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2009/10/19/298897.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/298897.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2009/10/19/298897.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/298897.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/298897.html</trackback:ping><description><![CDATA[<a target="_blank" href="http://222.185.229.91:9090/WaitingPaneFX/dist/WaitingPaneFX.jnlp"><img alt="" src="http://www.blogjava.net/images/blogjava_net/chenweionline/Snapshot/WaitingPaneFX.jpg" width="300" height="300" /></a><br />
<br />
（点击图片运行程序）<br />
<br />
项目源代码下载：<br />
<a href="http://www.blogjava.net/Files/chenweionline/WaitingPaneFX.rar">http://www.blogjava.net/Files/chenweionline/WaitingPaneFX.rar</a><br />
<img src ="http://www.blogjava.net/chenweionline/aggbug/298897.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2009-10-19 21:39 <a href="http://www.blogjava.net/chenweionline/archive/2009/10/19/298897.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JavaFX中实例化Java类对象</title><link>http://www.blogjava.net/chenweionline/archive/2009/10/15/298476.html</link><dc:creator>陈维</dc:creator><author>陈维</author><pubDate>Thu, 15 Oct 2009 14:16:00 GMT</pubDate><guid>http://www.blogjava.net/chenweionline/archive/2009/10/15/298476.html</guid><wfw:comment>http://www.blogjava.net/chenweionline/comments/298476.html</wfw:comment><comments>http://www.blogjava.net/chenweionline/archive/2009/10/15/298476.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/chenweionline/comments/commentRss/298476.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/chenweionline/services/trackbacks/298476.html</trackback:ping><description><![CDATA[如果Java类对象拥有不带参数的构造函数，那么可以在JavaFX代码里直接实例化：<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">var&nbsp;var1&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;ArrayList{};</span></div>
<br />
如果目标Java类只有带参数的构造函数就有些麻烦，需要分2步进行，首先新建一个Java工具类JavaUtils.java，在这个类里将你目标类实例化完成后通过赋值语句将其赋值给JavaFX变量：<br />
<br />
1、编写JavaUtils.java<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;java.net.MalformedURLException;&nbsp;&nbsp;<br />
</span><span style="color: #0000ff;">import</span><span style="color: #000000;">&nbsp;java.net.URL;&nbsp;&nbsp;<br />
</span><span style="color: #008000;">/**</span><span style="color: #008000;">&nbsp;<br />
&nbsp;*&nbsp;<br />
&nbsp;*&nbsp;</span><span style="color: #808080;">@author</span><span style="color: #008000;">&nbsp;Leon&nbsp;Chen&nbsp;<br />
&nbsp;</span><span style="color: #008000;">*/</span><span style="color: #000000;">&nbsp;&nbsp;<br />
</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">class</span><span style="color: #000000;">&nbsp;JavaUtils&nbsp;{&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">public</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">static</span><span style="color: #000000;">&nbsp;URL&nbsp;getURL(String&nbsp;spec)&nbsp;</span><span style="color: #0000ff;">throws</span><span style="color: #000000;">&nbsp;MalformedURLException{&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff;">return</span><span style="color: #000000;">&nbsp;</span><span style="color: #0000ff;">new</span><span style="color: #000000;">&nbsp;URL(spec);&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;<br />
}</span></div>
<br />
2、在JavaFX代码里使用JavaUtils生成URL类实例<br />
<div style="border: 1px solid #cccccc; padding: 4px 5px 4px 4px; background-color: #eeeeee; font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: #000000;">var&nbsp;url&nbsp;</span><span style="color: #000000;">=</span><span style="color: #000000;">&nbsp;JavaUtils.getURL(&#8220;http:</span><span style="color: #008000;">//</span><span style="color: #008000;">www.jqueen.org&#8221;);</span></div>
<br />
目前JavaFX版本为1.2，在Java和JavaFX代码的相互调用上还有很多不方便的地方，希望以后的版本会有改进。<br />
<br />
<img src ="http://www.blogjava.net/chenweionline/aggbug/298476.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/chenweionline/" target="_blank">陈维</a> 2009-10-15 22:16 <a href="http://www.blogjava.net/chenweionline/archive/2009/10/15/298476.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>