Zum Beispiel habe ich eine Klasse, in der ich eine Methode geschrieben habe, die ein Polyline-Objekt erstellt. Beachten Sie, wie ich solution.setTranslateY (315), die verschiebt die Polyline in meinem Javafx-Fenster.Gibt es eine Möglichkeit, etwas in einer Methode zu verschieben, ohne den Code der Methode explizit zu bearbeiten?
public Polyline getSolution()
{
Polyline solution = new Polyline();
solution.setStrokeWidth(3);
for (int i = 0; i < coordinates; i = i + 2)
solution.getPoints().addAll(puzzle[i], puzzle[i + 1]);
solution.setTranslateY(315);
//translates this solution farther down the display window
return solution;
}
Wie Sie sehen können, habe ich auf einem erstellte Objekt dieses „getSolution()“ Methode implementieren, indem sie in einer Gruppe setzen und dann fügte hinzu, dass Gruppen in der Szene meines Programms.
public void start(Stage primaryStage) throws FileNotFoundException
{
Scanner input = new Scanner(System.in);
System.out.println("Enter the name of the input file: ");
String fileName = input.nextLine();
ConnectTheDotsPuzzle heart = new ConnectTheDotsPuzzle(fileName);
// When the user inputs the file, it gets sent to the constructor
Line blueLine = new Line(0, 300, 500, 300);
//line between puzzle and solution
blueLine.setStroke(Color.BLUE);
blueLine.setStrokeWidth(3);
Text solutionText = new Text(20, 335, "Solution:");
solutionText.setFont(Font.font("Times", FontWeight.BOLD, 24));
Group group = new Group(heart.getPuzzle(), heart.getSolution(),
blueLine, solutionText);
// grouping everything together to put in the scene
Scene scene = new Scene(group, 500,
300);
primaryStage.setTitle("Connect the Dots");
primaryStage.setScene(scene);
primaryStage.show();
primaryStage.setOnCloseRequest(e -> System.exit(0));
}
Meine Frage ist: Gibt es eine Möglichkeit, so dass ich meine Linienzug nicht zu übersetzen Objekt in der ursprünglichen Methode habe ich? Wie kann ich es in meiner Startmethode nach unten verschieben? Wenn ich mehrere Objekte davon erstellen wollte und nicht immer wollte, dass es 315 war, fragte ich mich, wie ich es in meiner Startmethode ändern könnte, anstatt dass es eine konstante Verschiebung meiner Methode wäre.
Vielen Dank! Ich hatte noch nicht einmal darüber nachgedacht, dass meine getSolution-Methode ein Polyline-Objekt erstellt hat. Genau das habe ich gesucht. – brnn