好的,这就是我使用的代码。其中大部分来自JavaFX教程here。
我希望我的程序在点击按钮时加载图片。但它会进行打印,但不会加载图片。
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
import javafx.scene.image.*;;
public class Browser extends Application {
@Override
public void start(Stage primaryStage) {
Button btn = new Button();
btn.setText("Test");
Image ph1 = new Image("ph1.jpg");
ImageView disp1 = new ImageView();
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
System.out.println("Test1");
disp1.setImage(ph1);
System.out.println("Test2");
}
});
StackPane root = new StackPane();
root.getChildren().add(btn);
Scene scene = new Scene(root, 300, 250);
primaryStage.setTitle("Test");
primaryStage.setScene(scene);
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}
答案 0 :(得分:0)
您尚未将disp1
ImageView
添加到root
StackPane
。
试试这个:
StackPane root = new StackPane();
root.getChildren().add(btn);
root.getChildren().add(disp1);