我有一个小问题,当我想将textField、按钮和标签添加到VBOX时,我有一个错误: addAll()在ObservableList中无法应用于:

在这里: vBox.getChildren().addAll(textField,按钮,标签);
public class Main extends Application {
@Override
public void start(Stage primaryStage) throws Exception {
BorderPane layout = new BorderPane();
Scene scene = new Scene(layout, 400, 200);
TextField textField = new TextField();
Label label = new Label("Average: 0.0");
Button button = new Button("Przycisk");
button.setOnAction(event -> {
String textFromTextField = textField.getText();
String[] splittedText = textFromTextField.split(",");
double average = 0.0;
for (String s: splittedText) {
average += Double.parseDouble(s);
}
average /= splittedText.length;
label.setText("Average: " + average);
});
VBox vBox = new VBox();
vBox.getChildren().addAll(textField, button, label);
vBox.setAlignment(Pos.CENTER);
vBox.setSpacing(10);
layout.setCenter(vBox);
primaryStage.setScene(scene);
primaryStage.setTitle("App");
primaryStage.show();
}
}发布于 2017-04-16 19:54:28
这是因为您已经导入了AWT组件java.awt.Label和java.awt.TextField,而不是JavaFX组件、javafx.scene.control.Label和javafx.scene.control.TextField。
发布于 2017-04-16 19:54:42
好好看看你的进口品!
在图像中,您可以看到您使用的是来自'awt‘库的TextField和标签,而不是'javafx’库。一定要改变它,看看它是否成功!
(Ps. )下一次请在你的问题中张贴完整的堆栈跟踪!)
https://stackoverflow.com/questions/43441435
复制相似问题