簡體   English   中英

如何圓化 JavaFX PopupControl 的角

[英]How to Round the Corners of a JavaFX PopupControl

我想稍微圓化 JavaFX PopupControl 的角。

以下是我嘗試過的簡單再現:

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

@Override
public void start(Stage stage) {

    PopupControl pu = new PopupControl();
    pu.setStyle("-fx-background-radius: 10 10 10 10");
    pu.setStyle("-fx-border-radius: 10 10 10 10");

    VBox vb = new VBox();
    vb.setPrefWidth(300);
    vb.setPrefHeight(200);
    vb.setStyle("-fx-background-color: rgba(17, 230, 120, 1.0)");

    pu.getScene().setRoot(vb);
    stage.setWidth(600);
    stage.setHeight(500);
    stage.show();

    pu.show(stage);

這是顯示的內容:

為澄清起見,綠色 PopupControl 的角是我要四舍五入的部分。

任何幫助表示贊賞。

請注意,樣式是單個屬性,因此當您兩次調用pu.setStyle(...)時,第二個樣式將替換之前的樣式; 它不會添加到它。

您需要在設置背景顏色的同一容器上設置背景半徑。 以下作品:

public void start(Stage stage) {

    PopupControl pu = new PopupControl();

    VBox vb = new VBox();
    vb.setPrefWidth(300);
    vb.setPrefHeight(200);
    vb.setStyle("-fx-background-color: rgba(17, 230, 120, 1.0); " +
            "-fx-background-radius: 10 10 10 10 ;");


    pu.getScene().setRoot(vb);
    stage.setWidth(600);
    stage.setHeight(500);
    stage.show();

    pu.show(stage);
}

在此處輸入圖像描述

在外部樣式表中設置 styles 是首選,而且可能更容易。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM