拉伸屏幕尺寸时最左角的位置圆 - JavaFX

我有一个简单的程序,显示红色圆圈。


public void start(Stage stage) {      

  Circle circle = new Circle(30, 30, 30);

  circle.setFill(Color.RED);

  Pane pane = new Pane();

  pane.getChildren().add(circle);

  Scene scene = new Scene(pane);


  circle.centerXProperty().bind(Bindings.divide(scene.widthProperty(), 2));

  circle.centerYProperty().bind(Bindings.divide(scene.heightProperty(), 2));


  stage.setScene(scene);

  stage.show();

}

如何将我的圆圈定位在特定的角落(例如,左上角)并确保即使我调整程序屏幕的大小,它也能保持在那里?


萧十郎
浏览 176回答 2
2回答

蓝山帝景

使用 aStackPane和 useStackPane.setAlignment(node, position)设置左上角的节点。import javafx.application.Application;import javafx.geometry.Pos;import javafx.scene.Scene;import javafx.scene.layout.StackPane;import javafx.scene.paint.Color;import javafx.scene.shape.Circle;import javafx.stage.Stage;/** * * @author blj0011 */public class JavaFXApplication279 extends Application{    @Override    public void start(Stage primaryStage)    {        Circle circle = new Circle(30, 30, 30);        circle.setFill(Color.RED);        StackPane root = new StackPane(circle);        StackPane.setAlignment(circle, Pos.TOP_LEFT);        Scene scene = new Scene(root, 300, 250);        primaryStage.setTitle("Hello World!");        primaryStage.setScene(scene);        primaryStage.show();    }    /**     * @param args the command line arguments     */    public static void main(String[] args)    {        launch(args);    }}

猛跑小猪

对于在左上角的位置,圆的中心 x 和中心 y 应等于圆半径。(加上小的偏移量,例如 1 px,以显示圆圈,而没有对圆圈的顶部和左侧部分进行视觉切割。)对于右下角中心 x 等于框架宽度减去圆半径。并且中心 y 等于框架高度减去圆半径。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java