2014-02-27 86 views
1

我想用我的javafx應用程序設置外部css文件的樣式,但是當我添加css文件時,它不會產生任何區別。我使用Netbeans 7.4 IDE和jdk8,雖然代碼沒有指出任何錯誤或異常,但我沒有得到所需的輸出。我總是很困惑該怎麼做。我的代碼是...如何使用外部css文件來設置javafx應用程序的樣式

package manualstyle; 

import java.io.File; 
import java.net.URL; 
import javafx.application.Application; 
import javafx.event.ActionEvent; 
import javafx.event.EventHandler; 
import javafx.scene.Group; 
import javafx.scene.Scene; 
import javafx.scene.control.Button; 
import javafx.stage.Stage; 

/** 
* 
* @author vickyjonnes 
*/ 
public class ManualStyle extends Application { 

    @Override 
    public void start(Stage primaryStage) { 
     Group root=new Group(); 
     Scene scene = new Scene(root, 300, 250); 

     Button btn = new Button(); 
     btn.setText("Say 'Hello World'"); 
     btn.setLayoutX(100); 
     btn.setLayoutY(100); 
     btn.setOnAction(new EventHandler<ActionEvent>() { 

      @Override 
      public void handle(ActionEvent event) { 
       System.out.println("Hello World!"); 
      } 
     }); 



     root.getChildren().add(btn); 
     primaryStage.setScene(scene); 
     String css = ManualStyle.class.getResource("myStyle.css").toExternalForm(); 
     scene.getStylesheets().add(css); 
     primaryStage.show(); 
    } 

    /** 
    * The main() method is ignored in correctly deployed JavaFX application. 
    * main() serves only as fallback in case the application can not be 
    * launched through deployment artifacts, e.g., in IDEs with limited FX 
    * support. NetBeans ignores main(). 
    * 
    * @param args the command line arguments 
    */ 
    public static void main(String[] args) { 
     launch(args); 
    } 
} 

我必須駐留在同一目錄和css文件的內容是一個CSS文件:

.root{ 
    -fx-background-color: #ff0066; 
} 
+0

你確定你沒有得到任何'warnings'? – ItachiUchiha

+0

不,我沒有收到任何警告 –

+0

你可以嘗試通過在css中添加代碼來給按鈕添加顏色:.button {{0} {0} {%} -fx-border-color:rgb(49,89,23); }' – ItachiUchiha

回答

2

請通過以下解決方案。讓我知道,如果你仍然面臨的問題:

https://stackoverflow.com/a/22048338/1759128

+0

當我使用/ myStyle.css之前,我得到一個NullPOinterExecption –

+0

是的,我明白了!問題不在於'/',當它在某個文件夾內部使用css時! – ItachiUchiha

+0

我的src文件夾中沒有任何xml文件,我甚至不想製作一個文件,因爲我不想讓這些東西變得複雜。 我只有兩個文件在src文件夾中,一個是我的java主類文件,另一個是我的css文件鋤頭來連接它們兩個 –

相關問題