Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 画布作为场景图中的根节点?_Java_Javafx - Fatal编程技术网

Java 画布作为场景图中的根节点?

Java 画布作为场景图中的根节点?,java,javafx,Java,Javafx,我是JavaFX新手,我正在学习它。我尝试在应用程序中将画布对象作为根到场景图。然而,我无法做到这一点。我需要创建一个组或窗格对象,并向其中一个对象添加画布。我很好奇为什么我们不能将画布对象指定为根节点。也许,我遗漏了一些要点 我试图编译的代码如下: import javafx.application.Application; import javafx.stage.Stage; import javafx.scene.canvas.Canvas; import javafx.scene.Par

我是JavaFX新手,我正在学习它。我尝试在应用程序中将画布对象作为根到场景图。然而,我无法做到这一点。我需要创建一个组或窗格对象,并向其中一个对象添加画布。我很好奇为什么我们不能将画布对象指定为根节点。也许,我遗漏了一些要点

我试图编译的代码如下:

import javafx.application.Application;
import javafx.stage.Stage;
import javafx.scene.canvas.Canvas;
import javafx.scene.Parent;
import javafx.scene.Scene;

public class driver extends Application {

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

    Canvas canvas;

    @Override
    public void start( Stage stage ) {
        canvas = new Canvas(300, 300);
        Scene scene = new Scene(canvas, 300, 300);
        stage.setScene(scene);
        stage.show();
    }
}

不能将画布用作场景构造函数的参数,因为场景将父对象作为参数。画布具有超类节点,而不是父节点。要进行验证,只需检查它们的javadoc