ともさんのHP >プロブラミング >JavaFX >jarファイルからCSS、pngファイルを読み込む

jarファイルからCSS、pngファイルを読み込む

JavaFXのCSSファイルを読み込んだり、アイコンとして使うファイルをJarファイルから読み込むサンプルプログラムです。
javaCSSアイコン読み込み

画像ファイルの読み方

Eclipseで作業しているときにはエラーなく作業できたのに、Jarファイル化したら読み込めなくなってちょっと苦労しました。
下はEclipseでは動くけど、Jar化するとエラー。

Image icon = new Image( "file:icon.png" );

このように書き直したらうまく通りました。Pngファイルは実行ファイルと一緒にJarファイルに取り込んでいます。

Image icon = new Image(getClass().getResourceAsStream( "icon.png" ));


サンプルプログラム

トップの画像は下のコードを実行したものです。
赤く表示されているのがアイコンで、icon.pngを読み込んだものです。
ボタンの文字が大きかったり枠に色がついていますが、これは読み込んだCSSファイル内で設定しています。

package tomojavalib.swingfx;

import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.image.Image;
import javafx.scene.layout.*;
import javafx.stage.Stage;

public class CssIconTestFx extends Application {

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

 @Override
 public void start(Stage stage) throws Exception {
 stage.setTitle("FX");
 FlowPane pane = new FlowPane();
 Scene scene = new Scene(pane, 320, 240);
 stage.setScene(scene);

 //アイコンの設定
 // Image icon = new Image( "file:icon.png" );
 Image icon = new Image(getClass().getResourceAsStream( "icon.png" ));
 stage.getIcons().add( icon );
 ObservableList<String> stylesheets = scene.getStylesheets();
 stylesheets.add(getClass().getResource("test.css").toExternalForm());
 Button b = new Button("テスト");
 pane.getChildren().add(b);
 stage.show();
 }
}

最終更新日: 2018-02-21 07:32:41

ともさんのHP >プロブラミング >JavaFX >jarファイルからCSS、pngファイルを読み込む

広告
新着ページ

AIを利用し、衣服のデザイン画から型紙を制作する方法  
2つのアパレル3D技術でひらくオーダーメイド生産の手法  
【洋裁型紙】前後身頃の肩の傾きは何故前身頃の方が傾いているのか  
電子追尾式天体写真撮影法  
日本ミツバチ巣箱の種類  
ドラフター(製図台)でソーイング  
日本ミツバチが逃亡  
カメさんの箱庭  
天体用デジタルカメラの構造と天体写真  
Javaで静止画像(Jpeg)を動画(Mov)に変換  
USBカメラをJAVAで制御  

他のサイト

3D-CAD
洋裁CAD

いいねなど

 RSS 

Author: Tomoyuki Ito

このサイトの文章・写真の無断転載を禁じます