网站制作的常见布局,晋江市建设局网站,做网站做,静态网站可以做留言板我从博客文章Hello JavaFX 2.0#xff1a;NetBeans 7.1 beta的介绍中#xff0c;从NetBeans 7.1 beta的角度看了一个无处不在的Hello World示例的简单JavaFX版本。 在本文中#xff0c;我将介绍仅使用命令行工具通过JavaFX实现的Hello World版本。 JavaFX 2.0 API文档包括ja… 我从博客文章Hello JavaFX 2.0NetBeans 7.1 beta的介绍中从NetBeans 7.1 beta的角度看了一个无处不在的Hello World示例的简单JavaFX版本。 在本文中我将介绍仅使用命令行工具通过JavaFX实现的Hello World版本。 JavaFX 2.0 API文档包括javafx.application.Application类的类描述这是一个很好的起点。 Application类的Javadoc文档提供了有效的类用法描述的示例。 此类描述描述了JavaFX应用程序的生命周期甚至提供了代码示例以及显示示例呈现方式的图像。 我将在这篇文章中处理相同的示例。 Application类的Javadoc文档描述了该类的核心作用“ JavaFX应用程序从其扩展的应用程序类。” startStage方法是Application类中最有趣的方法因为它是“所有JavaFX应用程序的主要入口点”。 它是一种抽象方法因此必须通过扩展类来覆盖。 下一个代码清单显示了将编译但不执行任何操作的最小实现它甚至没有main功能。 HelloWorld.javaI最小裸机 package dustin.examples;import javafx.application.Application;
import javafx.stage.Stage;/*** Simple JavaFX Hello World example.* * author Dustin*/
public class HelloWorld extends Application
{Overridepublic void start(final Stage stage) throws Exception{throw new UnsupportedOperationException(JavaFX example not supported yet.);}
} 上一个代码片段显示了两个JavaFX类 Application和Stage 的导入当使用Javac编译以上代码而未将JavaFX库放在类路径上时会发生类似于以下内容的错误。 HelloWorld.java:3: error: package javafx.application does not exist
import javafx.application.Application;^
HelloWorld.java:4: error: package javafx.stage does not exist
import javafx.stage.Stage;^
HelloWorld.java:11: error: cannot find symbol
public class HelloWorld extends Application^symbol: class Application
HelloWorld.java:14: error: cannot find symbolpublic void start(final Stage stage) throws Exception^symbol: class Stagelocation: class HelloWorld
HelloWorld.java:13: error: method does not override or implement a method from a supertypeOverride^
5 errors 显而易见的解决方案是将apropos JavaFX库放在编译器的类路径上。 就我而言构建此代码所需的JavaFX SDK和JAR是C\ Program Files \ Oracle \ JavaFX 2.0 SDK \ rt \ lib \ jfxrt.jar 。 下一个代码清单建立在上一个代码片段的基础上并改编自Application类的类级Javadoc文档中提供的示例。 HelloWorld.javaII改编自Application的Javadoc package dustin.examples;import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;/*** Simple JavaFX Hello World example.* * author Dustin*/
public class HelloWorld extends Application
{Overridepublic void start(final Stage stage) throws Exception{final Circle circ new Circle(40, 40, 30);final Group root new Group(circ);final Scene scene new Scene(root, 400, 300);stage.setTitle(Hello JavaFX 2.0!);stage.setScene(scene);stage.show();}
} 上面显示的JavaFX应用程序可以部署到Web浏览器 但是我将重点放在从命令行运行它。 为此将一个主要功能添加到JavaFX应用程序如下一版本中所示。 HelloWorld.javaIII添加了“ main”功能 package dustin.examples;import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.shape.Circle;
import javafx.stage.Stage;/*** Simple JavaFX Hello World example.* * author Dustin*/
public class HelloWorld extends Application
{Overridepublic void start(final Stage stage) throws Exception{final Circle circ new Circle(40, 40, 30);final Group root new Group(circ);final Scene scene new Scene(root, 400, 300);stage.setTitle(Hello JavaFX 2.0!);stage.setScene(scene);stage.show();}/*** Main function used to run JavaFX 2.0 example.* * param arguments Command-line arguments: none expected.*/public static void main(final String[] arguments){Application.launch(arguments);}
} 在main功能中只需要一行。 该行是对静态方法Application.launchString ...的调用并带有传递给它的命令行参数。 现在可以执行该应用程序并显示如下屏幕快照所示。 结论 这篇博客文章演示了仅使用命令行工具编写和运行简单的JavaFX应用程序。 证明JavaFX 2.0已将“ Java”放回JavaFX中本文中的示例已使用用于“常规” Java应用程序的典型Java编译器和Java启动器进行编译和执行。 更复杂的JavaFX应用程序可能会从更特定的工具中受益但是该工具仅使用标准Java工具进行编译和执行。 参考 Hello JavaFX 2.0来自JCG合作伙伴 Dustin Marx 的命令行介绍来自Inspired by Actual Events博客。 翻译自: https://www.javacodegeeks.com/2012/08/hello-javafx-20-introduction-by-command.html