Announcement

Collapse
No announcement yet.

JavaFX neuer Button

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • JavaFX neuer Button

    Hy, ich bin gerade dabei JavaFX kennenzulernen. Über Netbeans7.1.1 gibt es ein Beispiel "Hello World".

    Funktioniert wunderbar. Allerdings möchte ich einen zweiten Button an anderer Stelle erzeugen.

    Leider komme ich nicht dahinter, wie ich den zweiten Button "Test", oben-links hinplazieren kann.

    Mein Code:
    [highlight=java]
    /*
    * To change this template, choose Tools | Templates
    * and open the template in the editor.
    */

    import javafx.application.Application;
    import javafx.event.ActionEvent;
    import javafx.event.EventHandler;
    import javafx.geometry.Pos;
    import javafx.scene.Scene;
    import javafx.scene.control.Button;
    import javafx.scene.control.ContentDisplay;
    import javafx.scene.layout.StackPane;
    import javafx.stage.Stage;

    public class Gaesteverwaltung extends Application {


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

    @Override
    public void start(Stage primaryStage) {
    primaryStage.setTitle("Gästeverwaltung");
    Button btn = new Button();
    btn.setText("Say 'Hello World'");
    btn.setOnAction(new EventHandler<ActionEvent>() {

    @Override
    public void handle(ActionEvent event) {
    System.out.println("Hello World!");
    }
    });
    // =====>>>>>> Was fehlt hier, wenn ich den Button auf x=150, y=100
    // setzen will?????
    Button btn1 = new Button();
    btn1.setText("Test");

    btn1.setOnAction(new EventHandler<ActionEvent>() {

    @Override
    public void handle(ActionEvent event) {
    System.out.println("Test");
    }
    });


    StackPane root = new StackPane();
    root.getChildren().add(btn);
    root.getChildren().add(btn1);
    primaryStage.setScene(new Scene(root, 300, 250));


    primaryStage.show();

    }
    }
    [/highlight]

    Der Button "Test" wurde einfach über den anderen gelegt.

    Was muss ich noch für "btn1" hinzufügen???

    Danke

    Gruß Lerando

  • #2
    Ja ist richtig so

    "StackPane lays out its children in a back-to-front stack."

    Siehe -> GridPane
    Christian

    Comment


    • #3
      Danke, hätte eigentlich selbst darauf kommen müssen.

      Bin halt noch ein Anfänger.

      Lösung:
      [highlight=java]
      ...
      //StackPane root = new StackPane();
      GridPane gp = new GridPane();
      gp.add(btn,100,100);
      gp.add(btn1,150,150);
      //root.getChildren().add(btn);
      //root.getChildren().add(btn1);
      primaryStage.setScene(new Scene(gp, 300, 250));
      ....
      [/highlight]


      Vielen Dank

      Gruß Lerando

      Comment

      Working...
      X