2017-03-09 4 views
0

Ich machte eine Skizze mit dem Verhalten, das ich versuche zu bekommen.Javafx Center Form auf dem Bildschirm innerhalb der Gruppe

Sketch

Deshalb möchte ich in der Mitte des Bildschirms ein Rechteck angezeigt werden und ein Dreieck, das Teil des Rechtecks ​​erstreckt. Das Problem ist, wenn ich ein Stackpane benutze, ist das Rechteck zentriert, aber auch das Dreieck und ich kann es nicht in die untere rechte Position bewegen. Wenn ich ein Group verwende, ist es nicht zentriert. Gibt es eine Möglichkeit, mein beabsichtigtes Verhalten zu erreichen?

+0

Vielleicht sollten Sie einen anderen Container in StackPane hinzufügen, die Sie erlauben, dass Rechteck zu bewegen, wohin Sie wollen? – user218046

+0

Irgendwelche Vorschläge, die man benutzen sollte? –

+0

Erstellen Sie eine Stackpanel innerhalb der Stackpane, die Sie bereits haben. Die Länge und Breite dieser neuen Stapelfläche sollte den Seiten des Rechtecks ​​entsprechen, das Sie hinzufügen möchten. Fügen Sie das Rechteck hinzu. Die Rechtecke des Rechtecks ​​sollten oben, unten, links und rechts Null sein. <- Bedeutet, dass das Rechteck dieses Stackpanel füllt. Fügen Sie nun das Dreieck wie unten erwähnt der neuen Stapelfläche hinzu. – Sedrick

Antwort

0

Stellen Sie die Ausrichtung Ihres Dreiecks ein. Verwenden Sie statische setAlignment(Node child, Pos value) Methode:

StackPane.setAlignment(triangle, Pos.BOTTOM_RIGHT) 
+0

Das wird nicht den gewünschten Effekt erzielen, weil es das Dreieck in der unteren rechten Ecke des Bildschirms anzeigt. Auch hier möchte ich, dass das Rechteck in der Mitte des Bildschirms angezeigt wird und das Dreieck die rechte untere Ecke des Rechtecks ​​abdeckt. –

+0

Dann fügen Sie "StackPane" ein Rechteck und ein Dreieck hinzu, verwenden Sie meine Antwort und legen Sie dieses 'StackPane' in die Mitte des Bildschirms. – MBec

+0

Meinst du zu einer zusätzlichen 'StackPane'? –

Verwandte Themen