精华内容
下载资源
问答
  • JavaFx入门教程

    2009-02-28 21:08:35
    比较简单的JavaFx入门教程,对于程度低一点的同学有用
  • javaFX 入门教程

    2010-03-20 15:20:28
    javaFX 入门 教程,sun 的力作。面向对象,编程很方便简单,以后的桌面的编程新秀,前景超广阔,学会了吃碗好饭呢!
  • javafx入门教程

    2009-01-12 10:44:57
    javaeye上面的以为热心网友发布的javafx入门教程 是翻译sun的官方教程 所以在这里首先要感谢这位热心的通道 我在此只是为了扩大传播 得点分 呵呵
  • JavaFX入门教程1——hello world
                   

    搭建环境。

    1. 下载安装JDK 8。
    2. 下载集成JavaFX开发eclipse。我的下载当前最新版本是:eclipse 4.6 。官网提供的下载地址不翻墙太慢了。
    3.下载JavaFX的UI设计工具。(这个hello world项目运行可以先不用下载安装,后面设计UI时才用到)

    上面是window 32位系统的。64位系统下载下面的:

    配置Eclipse 所使用 JDK 和 Scene Builder:

    1. 打开 Eclipse 的设置并找到 Java | Installed JREs 。

    2. 点击 Add…, 选择 Standard VM 并选择你安装 JDK 8 的 Directory 。

    3. 移除其他的 JREs 或 JDKs 从而使 JDK 8 成为默认
      Preferences JDK

    4. 在 Java | Compiler 中设置 Compiler compliance level 到 1.8
      Preferences Compliance

    5. 在 JavaFX 中指定你的 Scene Builder 可执行文件的路径。
      Preferences JavaFX


    创建并启动一个JavaFX项目。

    看教程提供的方法是:
    1.在 Eclipse(已安装 e(fx)clipse 的)中,点击 File | New | Other… 并选择 JavaFX Project。
    2.指定这个项目的名字(e.g. HelloApp)并点击 Finish。
    3.如果 application 包被自动创建,那么删除它和它的内容。

    但是按照教程操作,我总是卡在Finish那里,第一次点击完成,窗口跳了一下,还是原来窗口,继续点击finish,这弹出提示窗口,显示什么:the user operation is wating  for “updating project HelloApp”。网上查了好久办法,对eclipse配置该改了改了,eclipse重启N多次。还是没解决。
    最后关闭eclipse,直接删除文件夹下的项目文件,创建了一个普通的java project 。然后build path 把javafx需要的jar导入进去。(PS:问题是昨天遇到的,今天本来想重现一下截个图,突然发现好了,可以正常创建项目了,无语,还是把一般项目改为JavaFX说一下吧,其实很简单,就是把jar加进去就行了)



    HelloWorld.java
    package test;import javafx.application.Application;  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) throws Exception {          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。。。");  //          }  //      });                              //lambda表达式方式添加事件(java8可以使用这种语法)          btn.setOnAction((e) -> {              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);      }  }  

    编译运行可以看到下面界面,点击按钮,控制台会输出hello world


               

    再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

    展开全文
  • JavaFx入门教程(二)

    千次阅读 2017-06-29 15:19:59
    最近比较闲,同事介绍了下JavaFx就研究了下,写了一个构件界面的基础类的demo(javafx界面构件使用css样式) github源码地址:https://github.com/rain86/JavaFxBaseDemo刚学JavaFx的时候会遇见如何实现界面跳转, ...

    最近比较闲,同事介绍了下JavaFx就研究了下,写了一个构件界面的基础类的demo(javafx界面构件使用css样式)
    github源码地址:https://github.com/rain86/JavaFxBaseDemo

    刚学JavaFx的时候会遇见如何实现界面跳转,
    还有很多界面的模块都有重用,怎么实现不同模块在界面的随意组合。下面直接上代码来解决问题。

    下面demo中其实只有两个界面,
    一个是登陆界面LoginController.java,
    一个是主界面MainController.java。(其他模块随意组合拼成不同的主界面)

    Hospital.java 是程序的入口他继承了Application并且实现了main方法
    继承Application就会实现其中的start方法就是新建打开界面

    /**
     *
     * 程序入口
     * @author mile
     */
    public class Hospital extends Application {
    
        private Stage stage;
        private MainController main;
    
    
        @Override
        public void start(Stage stage) throws Exception {
            this.stage = stage;
            LoginController login = (LoginController) replaceSceneContent(Constants.LOGIN_PAGE);
            this.stage.show();
            login.setApp(this);
        }
    
        /**
         * @param args the command line arguments
         */
        public static void main(String[] args) {
            Application.launch(Hospital.class, (java.lang.String[])null);
        }
    
    
        /**
         * 替换界面并返回相应的控制类
         */
        private Initializable replaceSceneContent(String fxml) throws Exception {
            FXMLLoader loader = new FXMLLoader();
            InputStream in = Hospital.class.getResourceAsStream(fxml);
            loader.setBuilderFactory(new JavaFXBuilderFactory());
            loader.setLocation(Hospital.class.getResource(fxml));
            AnchorPane page;
            try {
                page = (AnchorPane) loader.load(in);
            } finally {
                in.close();
            }
            Scene scene = new Scene(page, 1000, 500);
            System.out.print("replaceSceneContent");
            stage.setScene(scene);
            stage.setTitle("Hospital");
            stage.sizeToScene();
            return (Initializable) loader.getController();
        }
    
        /**
         * 登陆成功后进入主页面
         */
        public void gotoMain(String[] strs) {
            try {
                main = (MainController) replaceSceneContent(Constants.MAIN_PAGE);//替换界面
                main.setApp(this);//给controller传入application
                main.loadLayout(strs);//给主界面中加载需要模块 strs 是模块集合
            } catch (Exception ex) {
                Logger.getLogger(Hospital.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    
        /**
         * 重绘主界面
         */
        public void reMain(String[] strs){
            main.loadLayout(strs);
        }

    主界面有不同的模块,且各种不同组合的模块组合。所以MainController.java中我们就实现了loadLayout方法根据传参显示不同模块组合的界面

    /**
     * FXML Controller class
     * 主界面:登陆成功后进入该界面,
     *
     * @author mile
     */
    public class MainController implements Initializable,setApp {
    
        private Hospital application;
        @FXML
        VBox main_border;
        /**
         * Initializes the controller class.
         */
        @Override
        public void initialize(URL url, ResourceBundle rb) {
            // TODO
        }    
    
        @Override
        public void setApp(Hospital application) {
            this.application = application;
        }
    
        /**
         * 根据传进来的模块重新绘制主界面:
         * 拿到main_border清空子元素,然后根据数据挨个把模块添加进来并重新绘制
         */
        void loadLayout(String[] strs) {
            main_border.getChildren().clear();
            for (String str : strs) {
                URL layout = this.application.getClass().getResource(str);
                if (layout != null) {
                    try {
                        FXMLLoader loader = new FXMLLoader();
                        InputStream in = Hospital.class.getResourceAsStream(str);
                        loader.setBuilderFactory(new JavaFXBuilderFactory());
                        loader.setLocation(Hospital.class.getResource(str));
                        Node page;
                        try {
                            page = (Node) loader.load(in);
                        } finally {
                            in.close();
                        }
                        main_border.getChildren().add(page);
                        setApp setapp = (setApp)loader.getController();
                        setapp.setApp(this.application);
                    } catch (IOException ex) {
                        Logger.getLogger(MainController.class.getName()).log(Level.SEVERE, null, ex);
                    }
                }
            }
        }
    }

    所有控制类都要实现该接口,即可使用hospital的重绘主界面方法,和application的方法

    package hospital;
    
    /**
     *
     * @author mile
     * 每个控制类都要实现这个接口,让他有application的引用,从而控制其他地方
     */
    public interface setApp {
        public void setApp(Hospital application);
    }

    例如下面的菜单模块的控制类

    /**
     * FXML Controller class
     * 头部的总菜单
     * @author mile
     */
    public class TopMenuController implements Initializable ,setApp{
    
        private Hospital application;
        /**
         * Initializes the controller class.
         */
        @Override
        public void initialize(URL url, ResourceBundle rb) {
            // TODO
        }    
    
        @Override
        public void setApp(Hospital application) {
            this.application = application;
        }
    
        @FXML
        private void gotoDelete(ActionEvent event) {
            try {
                String[] strs = new String[1];
                strs[0] = Constants.TOP_MENU;
                application.gotoMain(strs);
            } catch (Exception ex) {
                Logger.getLogger(QueryMenuController.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    
        @FXML
        private void gotoConsultingManagement(ActionEvent event) {
            try {
                String[] strs = new String[3];
                strs[0] = Constants.TOP_MENU;
                strs[1] = Constants.QUERY_MENU;
                strs[2] = Constants.CONSULTING_MANAGEMENT_BODY;
                application.reMain(strs);
            } catch (Exception ex) {
                Logger.getLogger(QueryMenuController.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
        @FXML
        private void gotoexit(ActionEvent event) {
            System.exit(0);
        }
    
    }
    

    写的比较流水账大家可以直接下载源码运行

    展开全文
  • JavaFx入门教程(一)

    千次阅读 2017-06-29 14:28:27
    JavaFx是什么?其实可以理解为就是用java做桌面程序的。开发环境安装1、使用eclipse中的插件 2、使用NetBeans IDE工具这里为以NetBeans为例子 安装NetBeans之前确保电脑上已经安装了JDK。 去官方网站上下载: ...

    JavaFx是什么?

    其实可以理解为就是用java做桌面程序的。

    开发环境安装

    1、使用eclipse中的插件
    2、使用NetBeans IDE工具

    这里为以NetBeans为例子
    安装NetBeans之前确保电脑上已经安装了JDK。
    去官方网站上下载:
    官方下载地址

    下载NetBeans Ide

    选择自己对应的系统,为这里下载的是最简单的版本 java SE的

    第一个JavaFx程序

    安装成功之后就可以新建项目开发了
    文件——新建项目如下图
    新建javafx项目

    点击下一步——完成即可

    右键项目点击运行即可运行你的第一个javafx项目了如下图
    运行你的第一个javafx项目

    Javafx代码结构

    OK第一个javafx运行完成了,让我们来看看他们的代码结构

    javafx代码结构

    如图
    Demo.java是继承了Application并实现了main方法,这里就是程序的入口,
    demoFxml.fxml 是布局文件
    demoFxmlController 是对应布局文件的逻辑处理

    布局

    到了这一步我们打开fxml文件发现没有可视化界面,下面我们需要下载一个工具JavaFX Scene Builder 可视化界面编辑器
    JavaFX Scene Builder 下载地址

    JavaFX Scene Builder

    然后打开fxml文件即可拖动控件来编辑自己的界面了。

    JavaFX项目打包

    javafxpackager -deploy -native image -outdir packages -outfile HelloWorld -srcdir . -srcfiles HelloWorld.jar -appclass helloworld.HelloWorld

    首先你需要有你的项目的编译输出jar文件。如果你是使用NetBeans IDE,到你的JavaFX项目文件夹/dist文件夹下找到jar文件(比如HelloWorld.jar),你可以把它复制到别的文件夹,或者就在这个文件夹下进行打包。总之,Windows cmd进入这个HelloWorld.jar所在的文件夹,输入上面的命令,会生成如下文件文件夹

    下篇文章写下我自己写的小demo

    展开全文
  • 这是javaFX Script Programming language 入门的基本语法与简易教程,是从官网上下载下来的pdf,所以是英文的,有兴趣的朋友可以下来看看,随便提高一下自己的英语水平.<注>这是.7z压缩文件,需要7-zip进行解压才行...
  • JavaFX入门

    2010-09-06 16:55:56
    JavaFX入门教程     下载源代码 〖 作者:翻译:Caoer 〗  什么是JavaFX?SUN在2007年春天发布了一个叫JavaFX新框架。这是一个泛泛的名字,因为JavaFX主要包含Script and Mobile两个...
    JavaFX入门教程

     

     

    下载源代码


    〖 作者:翻译:Caoer 〗

         什么是JavaFX?SUN在2007年春天发布了一个叫JavaFX新框架。这是一个泛泛的名字,因为JavaFX主要包含Script and Mobile两个组件,在将来SUN将开发更多的组件。

         JavaFX 的核心是 JavaFX 脚本,是一个声明式脚本语言。尽管同Java代码非常不同,但是同Java类具有很高的交互度。 JavaFX 中的很多类主要为了更容易实现Swing和Java2D而设计的。使用 JavaFX 脚本,您能很容易的为文本和图形开发GUI接口、动画和非常COOL的效果。并且,您能将Java和HTML代码包装到 JavaFX 脚本中。

        第二个组件- JavaFX Mobile,是为移动设备开发Java应用的平台。它最终会成为开发 JavaFX 脚本的平台但是现在同这篇文章实用的技术还很不兼容。

    <script type="text/javascript"></script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script>
    JavaFX 应用的一些例子

        在开始学习一门新的语言前,让我们先看一下JavaFX代码的一些例子。JavaFX 官方站点具有大量的JavaFX 实例。请点击JavaFX Script 2D Graphics Tutorial下载该实例. 下载完成以后,双击tutorial.jnlp 文件即可运行。几秒过后,你应该能够看到如图一的JavaFX实例运行场景(若没有出现该图片,你必须为.jnlp扩展名重新配置Java Web Start)。 

    图一、运行 tutorial.jnlp tutorial

        花些时间看一看这些例子和源代码。仅仅使用有限的几行JavaFX代码就能得到很多有趣的效果。如果你对于JavaFX的应用还是感到摸不着头脑,看一看下面的两个demo。它们是StudioMoto Tesla Motors 站点的部分重新实现。您可以从OpenJFX 项目站点下载OpenJFX 脚本Studiomoto Demo Tesla Demo。它们需要Java Web Start 才能运行,但是也取决于你的机器配置它们可能自动运行,或者你必须找到和运行已经下载的.jnlp文件。

    下载安装JavaFX

      如果你对于学习开发JavaFX应用程序,您应该了解至少使用JavaFX三个方法。同时了解JavaFX应用程序不是基于浏览器的也很重要。最简单最快捷的方法是基于叫JavaFXPad轻量级的工具。使用该工具的主要优势是你总能立即看到你在编辑器里所作更改的效果。你能从JavaFX项目网站下载到该工具( JavaFXPad )。并且运行它需要Java Web Start (如图二)。

     
    图二、运行JavaFXPad编辑器

         使用JavaFX的另一种方式是使用JavaFX脚本NetBeans 5.5插件或者Eclipse 3.2插件(需要下载和安装NetBeans 5.5 或者 Eclipse 3.2.2 以上集成开发工具 )。若您已经使用 NetBeans 5.5开始你的JavaFX之旅,OpenJFX项目网站的对于NetBean开发JavaFX的说明将会给予你帮助。 相似的如果您使用基于EclipseJavaFX插件,您可以去JavaFXEclipse插件。注意这篇文章中的所有例子已经在NetBeans5.5JavaFX插件中测试过,但是应该能够使用其他方法运行。

    使用NetBeans 5.5下的JavaFX插件开发Hello World 程序

    每当开始学习一门新的语言时,我们必定要写Hello World 小程序:

    源码列表1

    import javafx.ui.*;
    
    import java.lang.System;
    
    Frame {
    
    centerOnScreen: true
    
    visible: true
    
    height: 50
    
    width: 350
    
    title: "HelloWorld application..."
    
    background: yellow
    
    onClose: operation() {System.exit(0);}
    
    content: Label {
    
    text: "Hello World"
    
    }
    
    }
    
    

     在

    1.                   启动NetBeans 5.5.

    2.                   从主菜单选择File -> New Project.

    3.                   在新项目窗口,选择目录常规目录和 Java 应用项目(点击下一步).

    4.                   在新的Java应用程序窗口,在项目名文本框敲入 "FXExample".

    5.                   在相同窗口,用浏览按钮选择项目的目录.

    6.                   取消 "Set as main project" "Create main class" 复选框 (点击完成).

    7.                   右击FXExample -> Source Packages 和选择 New -> File/Folder.

    8.                   在新的文件窗口,选择另一个目录和JavaFX文件类型(点击下一步).

    9.                   在新的JavaFX文件窗口,敲入"HelloWorld" 作为文件名和"src"作为目录(点击完成).

    10.               拷贝源码列表1 HelloWorld.fx.

    11.               右击FXExample 项目选择项目属性.

    12.               在项目FXExample属性对话框 ,选择从目录面板运行节点.

    13.               在参数文本框敲入 "Hello World" (点击完成).

    14.               右击FXExample 项目选择运行项目选项.

    如果一切良好,你应该看到一个窗体如图三:


    图三、 NetBeans 5.5中运行 Hello World 应用程序

    现在你拥有了开发和运行任何JavaFX应用程序的IDE软件支持.

    JavaFX 语法

        在正式开始学习JavaFX,让我们浏览一遍该语言的语法要点。如果你非常熟悉Java语言,这些语法的大多数会让你感到非常熟悉,但是有一些会相当不一样。

    JavaFX 原始类型

        JavaFX 支持原始类型:String (对应于 java.lang.String), Boolean (对应于 java.lang.Boolean), Number (对应于 java.lang.Number) Integer (对应于 byte,short,int,long,BigInteger).

    JavaFX 变量

    一个JavaFX变量使用var关键字声明。看下面的例子:

     

     

    操作符

     

    众所周知的Java操作符&&, || ! JavaFX中采用下面的形式:

    ·                     Java: && JavaFX: and
    ·                     Java: ||  JavaFX: or

    ·                     Java: !    JavaFX: not

    JavaFX 方法

    JavaFX 支持这些方法. 具有参数、变量声明和返回值的方法举例:

    function taxes(x) { var t:Number = (19.0/100.0)*x; return t; }

    JavaFX if 语句


    JavaFX中,你你能通过使用if语句使用条件判断。

    if (条件) { //动作 } else if (条件) { //动作 } else { //动作 }

    JavaFX while 语句

    这个 while 语句同在Java中的while语句相似。 while (条件) { //动作}

    JavaFX for 语句

    for 语句用于循环和间隔(间隔使用方括号[] .. 符号表示).

    //i 将取值: 0, 1, 2, 3, 4, 5象在 (i in [0..5]) { //伴随 i的动作 }代码块中

    JavaFX 过程

    JavaFX 过程以operation 关键字为标志。一个简单的例子:

     

     

     

       JavaFX 类使用class关键字. 一个 JavaFX 类能够使用extends 关键字继承多个类使用逗号分割这些类的名字。在花括号中间你可以放属性、方法和过程,例如下面的例子:

     

     

    class Order {
    
    attribute order_nr: String;
    
    attribute ordertype: Order inverse Order.products;
    
    attribute products: Order* inverse Order.ordertype;
    
    function getOrderNr(): String;
    
    operation addOrder(order: Order);
    
    }
    

         注意属性使用attribute关键字声明,方法体和过程不在类体中,它们单元定义在类声明以后,在下文你很快就能看到。 inverse 子句是一个可选项 ,它表示一种同在类中另一个属性的双向关系。在这个案例中JavaFX将自动完成更新(插入、替代和删除)你能在Java.net上找到更完整的文档

    熟悉JavaFX

        在本小节,您将会看到一系列的小例子,这些例子覆盖JavaFX的各种特性和功能。主要目的是让你熟悉JavaFX代码和JavaFX应用程序的逻辑。第二个目标是当你需要开发仅仅需要几行代码就会有非常酷的GUI,动画和好的效果时候使你确信JavaFX值得好好研究一下。所有列出的例子将介绍关于JavaFX的技巧。每一个例子只使用很少的描述处理,所以不要想找到大量的注释。所有这些可访问的例子你都是你自己就能运行的,所以让我们开始吧。当我们需要使用System.out.println 打印属性值时候,你可以把它的名字放进含有引用的字符串,象源码列表2中所示的那样。

    源码列表2

    //带有应用文本的表达式
    
    import java.lang.System;
    var mynumber:Number = 10;
    System.out.println("数字是: {mynumber}");
    
    

     结果

    ·                     ?: 可选的(可能为 null)

    ·                     +: 1或多个

    ·                     *: 0或多个

    源码列表3

    //变量计数
    
    import java.lang.System;
    var mynumbers:Number* = [1,2,7];
    System.out.println("数字是: {mynumbers}");
    
    

     结果

    源码列表 4

    //变量类型是可选的
    
    import java.lang.System; 
    var days = ["Monday,","Friday,","Sunday"]; 
    System.out.println("你必须工作: {days}");
    

     

    结果: 你必须工作: Monday, Friday, Sunday
    你可以使用sizeof 操作符得到一个数组的大小:

    源码列表 5

    //得到一个数组的大小
    
    import java.lang.System;
    var lotto = [21,30,11,40,5,6];
    System.out.println("数组大小:{sizeof lotto}");
    
    

     结果

    您能使用 [] 操作符得到满足指定条件的子数组。条件放在 [] 中作为布尔判断 。这个与XPath 谓词相似.

    源码列表 6

    //使用[] 操作符 -与 XPath相似
    
    import java.lang.System;
    var mynumbers = [1,2,7,3,30,15,14,6,4];
    var numbers = mynumbers[n|n < 10]; 
    System.out.println("小于10的数字为: {numbers}");
    
    

     结果

    源码列表 7

    //返回指定序数位置的数组中的元素
    
    import java.lang.System;
    
    var mynumbers = [1,2,7,3,30,15,14,6,4]; 
    var number_four = mynumbers[indexof . == 4]; 
    System.out.println("数字4:{number_four}");
    
    

     结果

    ·                     as first: 在第一个位置插入

    ·                     as last:在最后一个位置(默认)插入

    ·                     before: 在前一个位置插入

    ·                     after:在下一个位置插入

    你可以使用 delete 语句从一个数组中删除一个元素.

    源码列表8

    //插入和删除语句
    import java.lang.System;
    var mynumbers = [1,2,7]; 
    System.out.println("Before inserting anything: {mynumbers}");
    insert 10 into mynumbers;
    System.out.println("After inserting at the end the \"10\" value:{mynumbers}");
    insert [8,6,90] as first into mynumbers; 
    System.out.println("After inserting at the first positions the \"8,6,90\" values:{mynumbers}");
    insert 122 as last into mynumbers;
    System.out.println("After inserting at the end the \"122\" value:{mynumbers}");
    insert 78 before mynumbers[3];
    insert 11 after mynumbers[3];
    System.out.println("After inserting the \"78\" and \"11\" values before/after the 3rd element:{mynumbers}");
    delete mynumbers[. == 122];
    System.out.println("After deleting:{mynumbers}");
    
    

     结果

    JavaFX中的一个非常好的功能是list。这个功能使用 select foreach 操作符实现。这有两个例子(一个使用 select 和使用 foreach) 得到指定间隔的奇数。

    源码列表9

    //JavaFX中的 select 和 foreach 操作符
    
    import java.lang.System; 
    function odd(p:Number) 
    { return select i from i in [1.0 ..p]
     where (i%2 == 0.0); 
    }
    
    var result = odd(10.0); 
    System.out.println("Odd numbers:{result}");
    
    

     结果

    源码列表10 ( 源码列表 9相同, 但是有 foreach)

    //JavaFX中的select 和 foreach 操作符
    
    import java.lang.System; 
    function odd(p:Number) { 
           return foreach (i in [1.0 ..p] 
         where (i%2 == 0.0)) i; 
         } 
    var result = odd(10.0);
    System.out.println("Odd numbers:{result}");
    
    

     这个例子显示了

    源码列表11

    //JavaFX中的 select 和 foreach 操作符
    
    import java.lang.*;
    import javafx.ui.*; 
    import javafx.ui.canvas.*;
    Frame { 
    centerOnScreen: true 
    visible: true 
    height: 500 
    width: 500 
    title: "Foreach demo..." 
    onClose: operation() {
    System.exit(0);
    } 
    content: ScrollPane { 
    background: white 
    view: Canvas {
     content: bind 
    foreach (i in [1..8], j in [1..8]) 
    Rect { x: i*30 y: j*30 width:30 height:30 fill: Color {red: (100+i) green: (100+j) blue: (100+(i*j))
    } 
    stroke:white 
    strokeWidth:1 } }
    
    }
    
    }
    
    

      


    图四. 运行源码列表 11

    使用双箭头括号引用为JavaFX关键字的变量名或者属性名,如下所示。

    源码列表 12

    //标志符引用
    
    import java.lang.System;
    
    for (<<for>> in [0..3]) {
    
    System.out.println("for = {<<for>>}");
    
    }
    
    

     结果

    当你需要开发Swing接口时,JavaFX 是一个伟大的工具,因为 JavaFX 考虑了非常多用来降低代码量和同javax.swing.*并存友好。在上一节(使用NetBeans5.5中的JavaFX插件测试Hello World应用程序),你看到了创建一个窗体是如何容易。这有两个更好的例子:创建按钮和文本框。

    源码列表 13

    import javafx.ui.*;
    
    import java.lang.System;
    
    Frame{
    
    content: Button { text: "Exit" action: operation() { System.exit(0); } }
    
    visible: true
    
    }
    
    

      


    图五. 运行源码 13

    源码列表14

    import javafx.ui.*;
    
    Frame {
    
    content: GroupPanel { var myRow = Row { alignment: BASELINE }
    
    var label_col = Column { alignment: TRAILING }
    
    var field_col = Column { alignment: LEADING }
    
    rows: [myRow] columns: [label_col, field_col]
    
    content: [SimpleLabel { row: myRow column: label_col text: "Type your text here:" }, TextField { row: myRow column: field_col columns: 50 }] }
    
    visible: true
    
    };
    
    

      


    图六. 运行源码 14

    Java.net 也有使用JavaFx创建 Swing接口的教程。

    展开全文
  • JavaFx入门网站收藏

    2016-10-28 10:31:51
    1. JavaFx教程: http://www.yiibai.com/javafx/scene_builder-design.html 2.JavaFx入门教程:http://www.xrpmoon.com/code_doc/javafx/ 3.JavaFx中文文档:http://www.javafxchina.net/blog/
  • javaFX 入门

    千次阅读 2009-02-20 18:08:00
    JavaFX入门教程 什么是JavaFX?SUN(太阳公司)在2007年春天发布了一个叫JavaFX新框架。这是一个泛泛的名字,因为JavaFX主要包含Script and Mobile两个组件,在将来SUN将开发更多的组件。 JavaFX 的核心是 JavaFX
  • JavaFX Script 入门教程

    2009-01-06 22:50:21
    将Sun的官方教程整理成PDF文件,方便查看
  • Java学习指南19 JavaFX入门

    千人学习 2019-08-19 06:51:49
    JavaFX教程分为2篇:JavaFX入门篇 , JavaFX高级篇。 二、主要内容  本篇介绍JavaFX的基本技术,至少包括以下方法:* 基本控件的使用 Label Button ImageView等* 基本布局的使用 BorderPane, HBox, VBox等*&...
  • Java学习指南19 JavaFX入门 邵发,清华大学毕业,从业软件开发十余...
  • JAVAFX入门(英文版)

    2015-08-22 16:00:49
    javafx开发入门教程,英文版,个人感觉不错。
  • 翻译自 JavaFX示例应用程序入门 此示例应用程序集旨在帮助您开始使用常见的JavaFX任务,包括使用布局,控件,样式表,FXML和视觉效果。 Hello World,JavaFX Style JavaFX中的表单设计 ...
  • javaFX2.0教程

    2016-04-19 17:04:29
    javaFX中文教程,对javaFX描述较为详细,可当作工具书使用,初期入门学习时使用
  • http://cnjavafx.cn/javafx/index.htmlJavaFx操作符我们把JavaFx的操作符整理了一个表:优先级 JavaFx操作符 简单描述 结合律1 function() 函数定义 Class() 用括号显示指定表达式优先级 无new 创建新实例...
  • javafx官方教程

    2009-06-14 10:27:45
    javafx官方入门教程,详细介绍了javafx的基本语法知识,是深入学习javafx的必备基础教程!
  • http://cnjavafx.cn/javafx/index.html JavaFx的数据类型变量在JavaFx中需要通过var关键字来定义变量(如同JavaScript一样),变量的类型是可以省略的,省略的话变量的类型通过实际赋值的类型来推断。变量定义格式为...
  • JavaFx中文入门教程- 概述

    千次阅读 2008-08-18 17:18:00
    http://cnjavafx.cn/javafx/index.html 概述总得说来,JavaFx有一下几个特征:用一种声明式的语法来定制GUI组件,使得代码的结构尽可能和GUI组件的实际布局比较接近。声明式的数据绑定和即时更新,简单方便的自定义...
  • day1.1 JavaFX入门

    2019-09-26 18:07:39
    然后在网上搜搜有没有什么改进方案的时候发现了JavaFX,他竟然可以使用css等优秀插件式渲染。所以来一瞅究竟。 第一章 环境搭建 懒得概述了,网上一大堆教程,就是先install new sofeware,在去找到网站并起个名字...
  • http://cnjavafx.cn/javafx/index.html JavaFx中的类和对象import类JavaFx中的import跟Java中的是完全一样的。import 包名.类名;import 包名.*;import 语句应该放在程序的最开头,在其他语句之前。JavaFx内建的类都...

空空如也

空空如也

1 2 3 4 5 6
收藏数 104
精华内容 41
关键字:

javafx入门教程

java 订阅