gpt4 book ai didi

java - HBox 未显示

转载 作者:太空宇宙 更新时间:2023-11-04 11:05:54 26 4
gpt4 key购买 nike

所以,我似乎无法让 HBox 出现在我的应用程序中。 Button 出现了,但 HBox 没有出现。有人可以让我知道我做错了什么吗?

package cyanlauncher;

import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.stage.Stage;
import javafx.stage.StageStyle;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.HBox;
import javafx.scene.layout.Pane;


public class Main extends Application {
private int numApps = 0;
private float btnSize = 48;
private float btnSpacing = 12;
@Override
public void start(Stage primaryStage) {
primaryStage.initStyle(StageStyle.TRANSPARENT);
primaryStage.setTitle("CyanLauncher");

Button quitBtn = new Button();

Pane root = new Pane();
root.getChildren().add(addHBox());

quitBtn.setGraphic(new ImageView(new Image(getClass().getResourceAsStream("./../data/exit.png"))));
quitBtn.setLayoutX(10 + ((btnSize + btnSpacing) * numApps));
quitBtn.setLayoutY(7);
quitBtn.setPadding(new Insets(0,0,0,0));
quitBtn.setPrefSize(btnSize, btnSize);
quitBtn.setOnAction(new EventHandler<ActionEvent>(){

@Override
public void handle(ActionEvent event){
System.exit(0);
}

});

root.getChildren().add(quitBtn);


Scene scene = new Scene(root,64,64);


scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());
scene.setFill(null);

primaryStage.setScene(scene);
primaryStage.show();
}

public HBox addHBox() {
HBox hbox = new HBox();
hbox.setPrefSize(64, 64);
hbox.setLayoutX(10);
hbox.setLayoutY(7);
return hbox;
}

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

这是我的 CSS:

/* JavaFX CSS - Leave this comment until you have at least create one rule which uses -fx-Property */
.root {
-fx-background-color: rgba(0,255,0,1);
}

.button {
-fx-background-color: rgba(0,0,255,1);
}

.hbox {
-fx-background-color: rgba(255,0,0,1);
}

最佳答案

HBox 默认没有样式类(参见 docs )。因此,您需要在您的(名称非常糟糕的)addHBox() 方法中执行 hbox.getStyleClass().add("hbox")

关于java - HBox 未显示,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33967035/

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