【问题标题】:what goes in what? Frame, Pane, Button, Label, Container ectr什么在什么?框架、窗格、按钮、标签、容器等
【发布时间】:2014-07-23 10:32:56
【问题描述】:

我只是在设置 GUI 时遇到了一个小问题。 (java 1.7, javafx)

- The method addAll(Node...) in the type ObservableList<Node> is not applicable for the arguments 
 (Container)

在代码上下文中:

Frame f = new Frame();
Frame g = new Frame();
HBox hbox = new HBox();
hbox.getChildren().addAll(f , g);

我想知道什么...什么在什么? O_o 这里是使用的类型:Frame、Button、Container、HBox、BorderPane、Pane、Stage、Scene、Label、VBox。以及您愿意添加的任何其他内容。

对不起,对于基本问题,但作为一个到目前为止只做过 C 和 C++ 的人,这似乎令人困惑,特别是因为较旧的答案有 JFrame 和 JPane 等。 还有一个我应该使用的命令来代替.add() 谢谢大家花时间帮助我。

【问题讨论】:

  • "旧答案有 JFrame 和 JPane" - 是的,因为它们使用 Swing,而 NOT AWT。除非您正在构建 applet,否则不应直接使用 AWT 类。

标签: java user-interface types


【解决方案1】:

错误表明 Frame 不是 JavaFX 的节点,而是 AWT 的容器。

http://docs.oracle.com/javase/7/docs/api/java/awt/Frame.html

http://docs.oracle.com/javafx/2/api/javafx/scene/layout/HBox.html

http://docs.oracle.com/javafx/2/api/index.html?javafx/scene/Node.html

'addAll' 需要一个节点作为参数,而不是一个框架。

您的问题是您正在混合库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 1970-01-01
    • 2016-12-08
    • 1970-01-01
    相关资源
    最近更新 更多