我遇到問題,因爲某些惡意原因我無法使用第二個css文件。我使用IntelliJ IDEA 14(版本139.222)終極版。 我使用JavaFX 2.0它內置在IntelliJ IDEA 139.222內部版本 Board.css不起作用。 LoginForm.css工作正常。 另外我已經將; * .css資源模式添加到編譯器部分。JavaFX - css在我的項目中不起作用
btn是我點擊是在登錄表按鈕。 代替GameApp類(它是從應用類繼承的類), 我用的getClass()方法,甚至一些其他類。沒有結果。
我試圖在Board.css使用的CSS是.button:懸停{-fx背景色:白色;} }
下面的代碼:
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
Parent root = null;
try {
root = (Pane) FXMLLoader.load(GameApp.class.getResource("/sample/buttonGrid.fxml"));
root.getStylesheets().add(GameApp.class.getResource("/sample/Board.css").toExternalForm());
currentStage.setScene(new Scene(root));
currentStage.setResizable(false);
currentStage.show();
} catch (IOException e) {
e.printStackTrace();
}
}
});
@Override
public void start(Stage primaryStage) throws InterruptedException, IOException {
this.currentStage = primaryStage;
primaryStage.setTitle("Hello World");
initPane();
Scene scene = new Scene(grid, 698, 364);
scene.getStylesheets().add(GameApp.class.getResource("LoginForm.css").toExternalForm());
primaryStage.setScene(scene);
primaryStage.show();
}
這一個沒有工作過:
try {
Pane pane = (Pane) FXMLLoader.load(GameApp.class.getResource("/sample/buttonGrid.fxml"));
pane.getStylesheets().add("/sample/Board.css");
currentStage.setScene(new Scene(pane));
currentStage.setResizable(false);
currentStage.show();
}
Board.css是:
.button:hover {
-fx-background-color: white;
}
哪個版本的JavaFX你使用?在早期版本中,將樣式表應用於'Parent'有一些問題。假設您沒有看到任何錯誤消息,請嘗試將樣式表添加到「Scene」而不是根節點。 – 2014-11-03 13:58:20
我不知道。 JavaFX內置於Intellij IDEA中。我正在處理這一個星期:)。讓我檢查一下。哦,我在Windows 8下運行的JavaFX Scene Builder 2.0中創建了一些FXML文件。 – 2014-11-03 14:18:45
如何做到這一點? – 2014-11-03 14:21:49