2016-07-02 8 views
0

は、私は私のcssファイルが置かれたフォルダを変更しようとしたとき、私はこのエラーを得た「リソースが見つかりません」そのファイルは存在することを知っています。のJavaFX CSS

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

@Override 
public void start(Stage primaryStage) throws Exception 
{ 
    primaryStage.setTitle("New Window"); 

    Scene scene = new Scene(new AnchorPane(), 800, 600); 
    primaryStage.setScene(scene); 

    URL css = new URL("file:///" + 
      new File("resources/css").getAbsolutePath().replace("\\", "/") + 
      "/main.css"); 
    scene.getStylesheets().clear(); 
    scene.getStylesheets().add(css.toExternalForm()); 

    primaryStage.show(); 
} 

これは私のEclipseプロジェクトのレイアウト[also as an image]です:

Test 
├───src 
│ └───com 
│  └───Client.java 
├───JRE System Library [JavaSE-1.8] 
└───resources 
    └───css 
     └───main.css 

私が試してみました:

scene.getStylesheets().add(getClass().getResource("/resources/css/main.css")); 
scene.getStylesheets().add(getClass().getResource("resources/css/main.css")); 
scene.getStylesheets().add(getClass().getResource("../resources/css/main.css")); 

を私もしようとcssファイルを追加するには、FXMLを使用してみました:

stylesheets="@../resources/css/main.css" 
stylesheets="@/resouces/css/main.css" 
stylesheets="@resources/css/main.css 
+0

あなたが追加する必要があり、あなたの ' Eclipseのクラスパスへの 'resources'パスです。 –

答えて

2

あなたの0123を入れてくださいresources/comディレクトリ(クラスのロード、それのようにresources +パッケージ)内のファイルと、あなたは、単純な使用することができます(と仮定すると、あなたのクラスはClient名前が付けられ、それがcomパッケージに含まれている):

scene.getStylesheets().add(Client.class.getResource("main.css").toExternalForm()); 
関連する問題