gpt4 book ai didi

JavaFX为ProgressIndicator和Spinner设置不同的样式

转载 作者:行者123 更新时间:2023-11-30 03:17:41 26 4
gpt4 key购买 nike

目前我正在使用进度指示器和一堆旋转器。

我想在一个 CSS 文件中为它们提供不同的样式。我的问题是,进度指示器始终使用我为旋转器计划的样式。

我做了一个小应用程序作为例子:

package application;

import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.ProgressIndicator;
import javafx.scene.layout.Pane;
import javafx.stage.Stage;


public class Main extends Application {
@Override
public void start(Stage primaryStage) {
try {
Pane root = new Pane();
Scene scene = new Scene(root,400,400);
scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());

ProgressIndicator value = new ProgressIndicator(-1.0);
value.getStyleClass().forEach(clazz -> System.out.println(clazz));
value.setPrefHeight(100);
value.setPrefWidth(100.0);

root.getChildren().add(value);



primaryStage.setScene(scene);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}

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

我想让我的进度指示器有红色背景并尝试这样做:

.progress-indicator > .indicator {
-fx-background-color: red;
}

但是如果不设置微调器的样式,它将无法工作。所以我附上这个:

.spinner {
-fx-background-color: red;
}

问题是,我所有的旋转器现在都有红色背景。我可以通过使用不同的 CSS 文件来做到这一点。但如果我只需要一个 CSS 文件那就更好了。

预先感谢您的时间和帮助!

最佳答案

您面临this bugmodena.css 中,该问题已在 8u40 中修复。现在您可以安全地更改进度指示器的背景颜色:

.progress-indicator:indeterminate > .spinner {
/** Applying to undo styling from .spinner, reported in RT-37965 */
-fx-background-color: red;
/* originally was */
/*-fx-background-color: transparent;*/
-fx-background-insets: 0;
-fx-background-radius: 0;
}

关于JavaFX为ProgressIndicator和Spinner设置不同的样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32184613/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com