トップ 新規 編集 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

JavaFXの応用:画像ビューア

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package sample.javafx;

import java.io.File;

import javafx.application.Application;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.input.MouseEvent;
import javafx.scene.layout.VBox;
import javafx.stage.FileChooser;
import javafx.stage.Stage;

public class ImageViewer extends Application {
    public static void main(String[] args) {
        launch(args);
    }
    @Override
    public void start(Stage primaryStage) throws Exception {
        VBox root = new VBox();
        Scene scene = new Scene(root);
        ImageView imageView = new ImageView();
        root.getChildren().add(imageView);
        FileChooser fileChooser = new FileChooser();
        EventHandler<MouseEvent> mouseEvent  = ( event ) -> {
            File file = fileChooser.showOpenDialog(primaryStage);
            if(file != null) {
                Image image = new Image(file.toURI().toString());
                imageView.setImage(image);
                primaryStage.setHeight(image.getHeight());
                primaryStage.setWidth(image.getWidth());
            }
        };
        scene.addEventFilter(MouseEvent.MOUSE_CLICKED, mouseEvent);
        primaryStage.setScene(scene);
        primaryStage.show();
    }
}
ImageViewer.java

最終更新時間:2017年04月26日 21時52分24秒