JavaFX基础篇

一、综述
1. JavaFX为支持触摸的设备提供多点触控支持

2. JavaFX具有内建的2D、3D动画支持,也可作为一个应用独立运行或在浏览器中运行

3. JavaFX程序的基本框架:抽象类javafx.application.Application

4. launch方法是定义在Application中的一个静态方法,用来启动一个独立的JavaFX应用

5. start方法一般用于将UI组件放入一个场景,并且在舞台中显示该场景

6. JavaFX中,main方法不是必须的,

7. 主舞台(JVM自动创建)——舞台——场景——面板——节点(可视化组件)

8. 防止用户改变舞台大小:stage.setResizable(false)

9. UI组件指的是:标签、按钮、复选框、文本输入区等

10. Scene可以包含Control或者Pane,但是不能包含Shape和ImageView,Pane可以包含Node的任何子类型(Node的每一个子类都有构造方法)

11.


12. Java图形中的尺寸单位是像素,面板的左上角为原点(0,0)

二、属性绑定
1. Java为基本类型和字符串定义绑定属性
2. 目标对象称为绑定对象或绑定属性,源对象称为可绑定对象或可观察对象,绑定属性.bind(源对象),每个绑定属性都有get、set方法,还有一个在对象名后加Property的获取方法返回属性本身,返回类型为:类型Property(如DoubleProperty)。数值类型的绑定属性类有加减乘除算法
3. 绑定分为单向绑定和双向绑定(即是目标也是源),双向绑定用bindBidirectional方法进行双向绑定

三、节点的通用属性和设置方法
1. JavaFX的样式属性称为JavaFX CSS,样式属性使用-fx-进行定义,一个节点的多个样式可以使用分号(;)一起设置。
btOK.setStyle("-Fx-border-color:red");
2. rotate可以设置旋转角度(角度为正表示顺时针)

四、Color类
1. JavaFX定义了抽象类Paint用于绘制节点,Color是其一子类
2. RGBA:红、绿、蓝、透明度(0.0表示颜色最深或完全透明,1.0表示颜色最浅或完全不透明)
3. 从、Color类的属性是不可以被修改的,Color类中有很多的标准颜色
4. 未解决的问题:用setStyle方法为绘制的圆填充颜色
circle.setStyle("-fx-border-color:RED;-fx-background-color:BLUE");

五、Font类
1. Font类描述字体粗细,形态,大小(字体形态是两个常量:FontPosture.ITALTC和FontPosture.REGULAR)
2. Font对象同Color对象一样,其属性不能改变
代码示例:
label.setFont(Font.font("Tahoma",FontWeight.NORMAL,FontPosture.ITALIC, 25));

六、布局面板
1. Pane:所有面板的基类,通常用作显示形状的画布;指定坐标时更容易
2. StackPane:节点重叠的布置在面板的中央
3. FlowPane:将节点按照加入顺序,从左到右水平或垂直的布置(默认Orientation.HORIZONTAL水平布置);需设置水平和竖值间距(setHgap、setVgap)
4. GridPane:将节点布置在一个网格中(第一个参数是列,第二个参数是行)
5. BorderPane:将节点放置在上下左右中五个位置
6. HBox:水平单行
7. VBox:垂直单列

七、形状
1. 抽象的Shape类定义了所有形状的共同属性(fill-填充内部区域、stroke-绘制形状边缘颜色、strokeWidth-指定形状边缘宽度)
2. 形状有Text、Line、Circle、Arc(弧)、Ellipse(椭圆)、Polygon(连接一个点序列的多边形)、PolyLine、Rectangle等
3.
  • Text:在起始点(x,y)处显示一个字符串
  • Line:定义两个坐标点,连线
  • Rectangle:定义两个坐标点,封闭的连线
  • Ellipse:定义了中心坐标后,Ellipse仅比Circle多一个半径
  • Arc: Ellipse的四个值+startAngle(起始角度,正的角度表示正东的逆时针)+length(跨度,即弧所覆盖的角度,正的角度表示正东方向沿逆时针旋转的角度)
  • PolyLine:与Polygon的区别在于,PolyLine绘制的形状不会闭合

你可能感兴趣的:(Java)