2017-04-16 22 views
0

私はエラー持っVBOXにテキストフィールド、 ボタンやラベルを追加したい場合は、私は、小さな問題を抱えている:。のJavaFXのVBox GetChildrenメソッド()のaddAll()エラー

: のaddAll()がObservableList中に適用することはできません

Image

ここでは:vBox.getChildren()。addAll(textField、button、label);あなたはAWTコンポーネントjava.awt.Labeljava.awt.TextFieldの代わりに、JavaFXのコンポーネント​​とjavafx.scene.control.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(); 
    } 
} 

答えて

1

0

輸入品をよく見てみましょう!

イメージでは、 'javafx'ライブラリの代わりに 'awt'ライブラリからTextFieldとLabelを使用したことがわかります。 これを変更して正常に機能しているかどうかを確認してください。

(Ps。次回の質問で完全スタックトレースを投稿してください)

関連する問題