Hallo ihr Lieben!
Ihr habt mir schon so oft mit einer kleinen Idee weitergeholfen, ich denke auch dieses Mal wirds klappen.
Ich soll in JavaFX über Textfelder und Buttons quasi ein "Programm" schreiben, womit man dann die X und Y Werte von zwei Rechtecken ändern kann.
Ich bin jetzt an diesem Punkt in meinem Code:
Wenn ihr das Ding startet erscheinen die beiden Rechtecke und die Buttons und Textfelder habe ich auch schon erstellt. Die Frage anhand meines Codes oben ist Folgende: Kann ich über einen Getter hier die aktuellen Daten der Rechtecke in die Textfelder kopieren und wenn ich diese dann verändere über eine Settermethode dann die Rechtecke anpassen? Oder gibt es einen besseren Weg um die Daten zu ändern und in Realtime darstellen zu lassen bei Knopfdruck "ändern"?
Vielen lieben Dank euch!
Ihr habt mir schon so oft mit einer kleinen Idee weitergeholfen, ich denke auch dieses Mal wirds klappen.
Ich soll in JavaFX über Textfelder und Buttons quasi ein "Programm" schreiben, womit man dann die X und Y Werte von zwei Rechtecken ändern kann.
Ich bin jetzt an diesem Punkt in meinem Code:
Code:
import javafx.application.Application;
import javafx.event.ActionEvent;
import javafx.event.EventHandler;
import javafx.stage.Stage;
import javafx.scene.Group;
import javafx.scene.Scene;
import javafx.scene.layout.*; //BorderPane;
import javafx.scene.paint.Color;
import javafx.geometry.*; //Insets;
import javafx.scene.control.*;
import javafx.scene.shape.*;
import javafx.scene.text.*;
public class GUIPaint extends Application {
@Override
public void start(Stage primaryStage) {
try {
Group root = new Group();
Scene scene = new Scene(root,1000,500);
primaryStage.setScene(scene);
primaryStage.setTitle("GUIPaint");
primaryStage.show();
GridPane pane = new GridPane();
pane.setHgap(20);
pane.setVgap(5);
pane.setPadding(new Insets(5,5,5,5));
Label l1 = new Label("X:");
Label l2 = new Label("Y:");
Label l3 = new Label("A:");
Label l4 = new Label("B:");
Rectangle r = new Rectangle(250,100,150,100);
r.setFill(Color.BLUE);
r.setStroke(Color.AQUAMARINE);
Rectangle f = new Rectangle(400,150,100,200);
f.setFill(Color.RED);
f.setStroke(Color.BROWN);
TextField tf1 = new TextField("X");
TextField tf2 = new TextField("Y");
TextField tf3 = new TextField("A");
TextField tf4 = new TextField("B");
Button b1 = new Button ("Ändern!");
pane.add(l1, 0, 0);
pane.add(tf1, 1, 0);
pane.add(l2, 2, 0);
pane.add(tf2, 3, 0);
pane.add(l3, 4, 0);
pane.add(tf3, 5, 0);
pane.add(l4, 6, 0);
pane.add(tf4, 7, 0);
pane.add(b1, 8, 0);
Shape su = Shape.union(r, f);
Shape ss = Shape.subtract(f,r);
root.getChildren().addAll(r,f, pane);
}
catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
// TODO Auto-generated method stub
launch(args);
}
}
Wenn ihr das Ding startet erscheinen die beiden Rechtecke und die Buttons und Textfelder habe ich auch schon erstellt. Die Frage anhand meines Codes oben ist Folgende: Kann ich über einen Getter hier die aktuellen Daten der Rechtecke in die Textfelder kopieren und wenn ich diese dann verändere über eine Settermethode dann die Rechtecke anpassen? Oder gibt es einen besseren Weg um die Daten zu ändern und in Realtime darstellen zu lassen bei Knopfdruck "ändern"?
Vielen lieben Dank euch!