码迷,mamicode.com
首页 > 编程语言 > 详细

JAVAFX-1 开发应用

时间:2017-11-30 00:40:31      阅读:246      评论:0      收藏:0      [点我收藏+]

标签:网易云   用户   overview   com   9.png   信息   down   http   技术分享   

为什么用javafx?

  • 写这个专题的目的,其实也是好玩,原来的熟悉的使用swing 来开发java中的gui程序,其实早就知道有javafx 这个东西的,一致没有时间的玩,最近有时间所以学习.这个专题会参考的其它的现有教程,结合自己对于swing的理解,可能有的地方说得不是太清楚,将就将就吧.
  • swing与javafx的一篇水文章 https://www.zhihu.com/question/37236236
  • 现有参考文章 http://www.yiibai.com/javafx/javafx_overview.html

    javafx是什么?

  • 实际上就是开发gui程序 ,富互联网应用是那些提供与Web应用程序类似的功能,并可作为桌面应用程序体验的应用。与用户的正常网络应用程序相比,它们提供更好的视觉体验。这些应用程序可作为浏览器插件或作为虚拟机提供,用于将传统静态应用程序转换为更加增强,流畅,动画和引人入胜的应用程序。
  • 现有前端技术也可以做gui程序,比如网易云音乐,网易有道词典等,性能还可以,不过我们这里主要说javafx. 其实你有兴趣还是可以去看看的网易的开源的拿到api系统

迅速步入开发过程

  • 我们这里选择eclipse 喜欢的idea 可以用idea构建学习.它们都提供 了相应的构建插件
  • 开发环境下载地址:
  • 这里我给的是直接的ide下载环境,随着eclipse 迭代更新
    http://downloads.efxclipse.bestsolution.at/downloads/nightly/sdk/
    技术分享图片

  • 如果你要手动集成开发环境可以看下面这篇文章
    http://www.yiibai.com/javafx/install-efxclipse-into-eclipse.html
  • JavaFX Scene Builder下载
    JavaFX Scene Builder是一种可视布局工具,允许用户快速设计JavaFX应用程序用户界面,而无需编码。用户可以将UI组件拖放到工作区,修改其属性,应用样式表,并且它们正在创建的布局的FXML代码将在后台自动生成。它的结果是一个FXML文件,然后可以通过绑定到应用程序的逻辑与Java项目组合。
    可以有效与eclipse 进行集成 ,这里选择 2..版本
    技术分享图片

地址: http://www.oracle.com/technetwork/java/javase/downloads/javafxscenebuilder-1x-archive-2199384.html
技术分享图片

  • 如何集成到eclipse
    http://www.yiibai.com/javafx/install-javafx-scene-builder-into-eclipse.html

  • 开发理论
    上面的开发环境部署就这么多,下面大概介绍一下开发基础理论,javafx不再是单独的mvc 开发模式,虽然说本质上还是,如何你是一个了解安卓开发的,那么很快就会熟悉javafx开发 ,他们有很多相类似的地方,请看下面这张图
    技术分享图片

在VIEW上显示它
用户使用CONTROLLER
操作数据(更新,修改,删除,..),MODEL上的数据已更改。
在VIEW上显示MODEL的数据。

  • 造 hello world
    构建应用程序
  1. 从”File”菜单中选择”New Project”。
  2. 在”JavaFX”应用程序分类中,选择”JavaFX Application”,单击”Next”按钮。
  3. 将Project命名为”HelloWorld”并单击”Finish”按钮。

    import javafx.application.Application;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.scene.Scene;
    import javafx.scene.control.Button;
    import javafx.scene.layout.StackPane;
    import javafx.stage.Stage;
    ?
    public class HelloWorld extends Application {
    ?
    ?? @Override
    ?? public void start(Stage primaryStage) {
    ?????? Button btn = new Button();
    ?????? btn.setText(“Say 'Hello World'”);
    ?????? btn.setOnAction(new EventHandler<ActionEvent>() {
    ?????????? @Override
    ?????????? public void handle(ActionEvent event) {
    ??????????????System.out.println(“Hello World!”);
    ?????????? }
    ?????? });
    ?
    ?????? StackPane root = new StackPane();
    ?????? root.getChildren().add(btn);
    ?????? Scene scene = new Scene(root, 300, 250);
    ?
    ?????? primaryStage.setTitle(“Hello World!”);
    ?????? primaryStage.setScene(scene);
    ?????? primaryStage.show();
    ?? }
    ?
    ?? public static void main(String[] args) {
    ?????? launch(args);
    ?? }
    }

    ● JavaFX应用程序的主类需要继承自application.Application类。start()方法是所有JavaFX应用程序的入口。
    ● JavaFX应用程序将UI容器定义为舞台(Stage)与场景(Scene)。Stage类是JavaFX顶级容器。Scene类是所有内容的容器。例3-1中创建了Stage和Scene,然后为Scene设置了大小并使其可见。
    ● 在JavaFX中,Scene中的内容会以由图形节点(Node)构成的分层场景图(Scene Graph)来展现。在本例中,root节点是一个StackPane对象,它是一个可以调整大小的layout节点。这就意味着在用户改变stage大小时,root节点可以随scene的大小变化而变化。
    ● root节点包含一个带文本的按钮子节点,按钮上添加了一个事件处理器(Event Handler),它在点击按钮时会向控制台输出信息。
    ● 当JavaFX应用程序是通过JavaFX Packager工具打包时,main()方法就不是必需的的了,因为JavaFX Package工具会将JavaFX Launcher嵌入到JAR文件中。但是保留main()方法还是很有用的,这样你可以运行不带有JavaFX Launcher的JAR文件,例如在使用某些没有将JavaFX工具完全集成进去的IDE时。另外嵌入了JavaFX代码的Swing应用程序仍需要main()方法。
    技术分享图片

  • 运行效果

技术分享图片

JAVAFX-1 开发应用

标签:网易云   用户   overview   com   9.png   信息   down   http   技术分享   

原文地址:http://www.cnblogs.com/dgwblog/p/7923299.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!