JavaFX程序的基本结构

Javafx 是开发java GUI 程序的新框架.

每个javafx程序都定义在一个继承自 javafx.application.Application 抽象类的类中,需要重写 public void start(Stage primaryStage){} 方法,一个javafx程序的运行需要再main(String[]args)方法中调用 Application.launch(args);

javafx程序的界面设计 涉及 stage类 scene类 node类
类比于剧院的设计, 最外层的框架类似舞台,舞台上有一个场景,界面中的按钮图形就像在场景中的演员.同时,为了让结点能更好的确定在场景中的位置,javafx中还添加了Pane类主要用于按照某种方式更方便的布置结点的位置.

javafx程序的继承关系在这里插入图片描述
可以看到, 一个舞台对应一个场景,一个场景对应一个Parent类或者他的子类的对象.一个面板中可以有多个结点.

javafx的属性绑定
GUI程序设计首先要让结点有合适的位置.但如果按照Java坐标系,只能设置绝对位置,当尺寸改变是修改就非常不方便.属性绑定可以很好得解决这个问题.

属性绑定就是让一个对象的值和另一个对象的值绑定在一起,随着另一个的变化做出相应的变化.
这里涉及到两个对象,目标对象和源对象.
目标对象是javafx.beans.value.ObervableValue 的实例,
源对象是javafx.beans.property.Property的实例,接口中定义类bind()方法用来绑定.
Property是ObervableValue的子类.

如果有 Property a  ObervableValue b
a.bind(b);
对于基本数据类型double int string等
有DoubleProperty IntegerProperty StringProperty的抽象类(数据类型+Property)
和具体子类 SimpleDoubleProperty...(Simple+抽象类名)

对Property对象进行四则运算返回Property对象
调用
a.add/sub/divide/multiple(基本数据类型);
posted @ 2019-07-02 09:43  少年留不住  阅读(562)  评论(0编辑  收藏  举报