[英]JavaFx Css not working with eclipse
我是JavaFx的新手,正在嘗試建立一種樣式。 我當時正在上教程,但碰壁了我無法通過。 無論我在CSS文件中做什么,都不會對App產生影響。
public class LoginForm extends Application{
public static void main(String arg[]){
launch(arg);
}
@Override
public void start(Stage primaryStage){
GridPane grid = new GridPane();
grid.setAlignment(Pos.CENTER);
grid.setHgap(10);
grid.setVgap(10);
grid.setPadding(new Insets(25,25,25,25));
Scene scene =new Scene(grid,300,275);
scene.getStylesheets().add(getClass().getClassLoader().getResource("login2.css").toExternalForm());
Label userName = new Label("User Name:");
grid.add(userName, 0, 1);
TextField userTextField = new TextField();
grid.add(userTextField, 1, 1);
Label pw = new Label("Password:");
grid.add(pw, 0, 2);
PasswordField pwBox = new PasswordField();
grid.add(pwBox, 1, 2);
Button btn =new Button("Sign in");
HBox hbBtn =new HBox(10);
hbBtn.setAlignment(Pos.BOTTOM_RIGHT);
hbBtn.getChildren().add(btn);
grid.add(hbBtn,1,4);
final Text actiontarget =new Text();
grid.add(actiontarget, 1, 6);
btn.setOnAction(new EventHandler<ActionEvent>(){
@Override
public void handle(ActionEvent e){
actiontarget.setFill(Color.FIREBRICK);
actiontarget.setText("Sign in button pressed");
}
});
grid.getStylesheets().add("login2.css");
primaryStage.setScene(scene);
primaryStage.show();
}}
我正在使用Eclipse,Java 7.1。 奇怪的是它確實看到了CSS文件,我知道這是因為如果我將其更改為不存在的文件,它將無法編譯。 我已經為CSS文件嘗試了一些代碼,但目前看起來像這樣
.root{
-fx-font-size: 14pt;
-fx-font-family: "Tahoma";
-fx-base: #DFB951;
-fx-background: #A78732;
-fx-focus-color: #B6A678;
}
可以將層疊樣式表添加到場景中。 因此,如果不能解決問題,您也可以在代碼中設置樣式,以進行首次嘗試。
可以這樣做:
Component.setStyle("CSS-Code insert");
我遵循相同的Oracle教程,並且具有與Eclipse相同的症狀。 您是否檢查過項目中只有一個“ login2.css”文件,並且該文件位於bin文件夾中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.