Hmm, 2 ways to do it actually.
No1 : Use the Desktop API of JDK6. It's simple to use. One example is here.
So, very basic code will go like this :
package sample2;<br />import javafx.scene.Scene;<br />import javafx.stage.Stage;<br />import javafx.scene.control.*;<br />import java.net.*;<br />Stage {<br /> title: "HyperLink to URL"<br /> width: 240<br /> height: 320<br /> scene: Scene {<br /> content: [<br /> Hyperlink{<br /> translateY: 160<br /> translateX: 40<br /> width: 150<br /> text: bind "Visit javafx Samples! "<br /> action: function():Void{<br /> java.awt.Desktop.getDesktop().browse(new URI("http://javafx.com/samples"));<br /> }<br /> }<br /> ]<br /> }<br />}
So, 2 things for running this code. First,Desktop API has been added in JDK6, so this code won't run on JDK5.
Second, Add rt.jar(rt.jar of JDK6) file in the Libraries if you are using Netbeans
No2 : For only JavaFX code, we can use AppletStageExtension like this :
package sample1;<br />import javafx.stage.Stage;<br />import javafx.scene.Scene;<br />import javafx.scene.control.Hyperlink;<br />import javafx.stage.AppletStageExtension;<br />Stage {<br /> title: "Hyperlink to URL"<br /> width: 250<br /> height: 80<br /> scene: Scene {<br /> content: [<br /> Hyperlink {<br /> text: "JavaFX Samples !"<br /> action: function() {<br /> AppletStageExtension.showDocument("http://javafx.com/samples");<br /> }<br /> }<br /> ]<br /> }<br />}<br />
In this case, you cant send hyperlink from Desktop Application, but it will work fine for applet or Browser application.
So, best is to use this and then use our normal funda : if {__PROFILE__}" != "browser") --> use the Desktop API code. What you say :).