×
JavaFX教程JavaFX概述和简介JavaFX开发环境安装配置安装e(fx)clipse到Eclipse (JavaFX工具)在Eclipse安装JavaFX Scene BuilderJavaFX快速入门

形状

JavaFX线条JavaFX矩形椭圆JavaFX路径JavaFX圆弧JavaFX多边形折线JavaFX曲线JavaFX文本

属性

JavaFX颜色JavaFX渐变颜色JavaFX属性JavaFX绑定JavaFX集合

布局

JavaFX FlowPane布局JavaFX HBoxJavaFX VBoxJavaFX BorderPane布局JavaFX GridPane布局JavaFX ScrollPane布局JavaFX TitledPane布局JavaFX Accordion布局

UI控件

JavaFX标签JavaFX按钮JavaFX单选按钮JavaFX切换按钮JavaFX复选框JavaFX选择框JavaFX文本域(输入框)JavaFX密码字段JavaFX超链接JavaFX进度条JavaFX进度指示器JavaFX滚动条JavaFX DatePickerJavaFX颜色选择器(ColorPicker)JavaFX文件选择器(FileChooser)JavaFX菜单(Menu)

图表

JavaFX矩形椭圆


JavaFX Shape类定义了常见的形状,例如线,矩形,圆,Arc,CubicCurve,Ellipse和QuadCurve。

在场景图上绘制矩形需要宽度,高度和左上角的(xy)位置。

要在JavaFX中绘制一个矩形,可以使用javafx.scene.shape.Rectangle类。

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;
// by  w wW.Y  I  I b  Ai .c  o  m 
public class Main extends Application {
    public static void main(String[] args) {
        Application.launch(args);
    }

    @Override
    public void start(Stage primaryStage) {
        primaryStage.setTitle("矩形示例");
        Group root = new Group();
        Scene scene = new Scene(root, 300, 250, Color.WHITE);


        Rectangle r = new Rectangle();
        r.setX(50);
        r.setY(50);
        r.setWidth(200);
        r.setHeight(100);

        root.getChildren().add(r); 
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}

上面的代码生成以下结果。

圆角矩形

Rectangle类实现了弧宽和弧高。可以使用这些功能来绘制圆角矩形。

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.paint.Color;
import javafx.scene.shape.Rectangle;
import javafx.stage.Stage;

public class Main extends Application {

    public static void main(String[] args) {
        Application.launch(args);
    }

    @Override
    public void start(Stage primaryStage) {
        primaryStage.setTitle("圆角矩形示例");
        Group group = new Group();

        Rectangle rect = new Rectangle(20, 20, 200, 200);

        rect.setArcHeight(15);
        rect.setArcWidth(15);

        rect.setStroke(Color.BLACK);
        group.getChildren().add(rect);

        Scene scene = new Scene(group, 300, 200);
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}

上面的代码生成以下结果。

椭圆示例

import javafx.application.Application;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.effect.DropShadow;
import javafx.scene.paint.Color;
import javafx.scene.shape.Ellipse;
import javafx.stage.Stage;


public class Main extends Application {
    public static void main(String[] args) {
        Application.launch(args);
    }

    @Override
    public void start(Stage primaryStage) {
        primaryStage.setTitle("椭圆示例");
        Group root = new Group();
        Scene scene = new Scene(root, 300, 250, Color.WHITE);

        Group g = new Group();

        DropShadow ds = new DropShadow();
        ds.setOffsetY(3.0);
        ds.setColor(Color.color(0.4, 0.4, 0.4));

        Ellipse ellipse = new Ellipse();
        ellipse.setCenterX(50.0f);
        ellipse.setCenterY(50.0f);
        ellipse.setRadiusX(50.0f);
        ellipse.setRadiusY(25.0f);
        ellipse.setEffect(ds);

        g.getChildren().add(ellipse);

        root.getChildren().add(g);
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}

上面的代码生成以下结果。


分类导航

关注微信下载离线手册

bootwiki移动版 bootwiki
(群号:472910771)