창의 JavaFX 센터 텍스트
Pane
클래스에서 노드를 중앙에 배치하는 기능은 없지만 노드를 중앙에 배치하려면 StackPane
을 사용할 수 있습니다. 이 튜토리얼은 StackPane
을 사용하여 JavaFX에서 텍스트 또는 기타 노드를 중앙에 배치하는 방법을 보여줍니다.
창의 JavaFX 센터 텍스트
StackPane
은 자식을 다른 사람과 쌓기 위해 레이아웃하는 데 사용되는 일종의 창입니다. StackPane
을 정렬하여 창의 노드를 중앙에 배치할 수 있습니다.
StackPane
의 기본 정렬 속성은 Pos.CENTER
입니다. JavaFX StackPane
은 JavaFX.scene.layout.StackPane
에서 인스턴스화됩니다.
StackPane
에는 다른 목적으로 사용되는 두 개의 생성자가 있습니다. StackPane
의 구문은 다음과 같습니다.
StackPane Demo = new StackPane();
StackPane
의 생성자는 다음과 같습니다.
StackPane()
: 기본Pos.CENTER
정렬로 레이아웃이 생성됩니다.StackPane(Node…. nd)
: 레이아웃이 기본 정렬로 생성됩니다.
정렬 속성은 StackPane
의 노드를 정렬하는 데 사용할 수 있습니다. StackPane
이 정렬과 함께 작동하는 세 가지 방법이 있습니다.
getAlignment()
: 정렬 속성 값을 가져오는 메서드입니다.setAlignment(Posvalue)
: 정렬 속성 값을 설정하는 메서드입니다.setAlignment(Node 자식, Posvalue)
:StackPane
에서 자식 노드에 대한 정렬 속성 값을 설정하는 메서드입니다.
StackPane
을 사용하여 창에서 노드 텍스트를 중앙에 배치하는 예를 시도해 보겠습니다. 예를 참조하십시오.
package delftstack;
import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.geometry.Insets;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.paint.Color;
import javafx.scene.shape.Circle;
import javafx.scene.shape.Sphere;
import javafx.scene.text.Font;
import javafx.scene.text.FontWeight;
import javafx.scene.text.Text;
import javafx.stage.Stage;
public class JavaFx_StackPane extends Application {
@Override
public void start(Stage DemoStage) {
// Create the text to be centered
Text Demotext = new Text("Centered Text");
// Font for the text
Demotext.setFont(Font.font(null, FontWeight.BOLD, 20));
// color of the text
Demotext.setFill(Color.BLUE);
// position of the text
Demotext.setX(20);
Demotext.setY(50);
// circle
Circle DemoCircle = new Circle(700, 500, 300);
// fill color
DemoCircle.setFill(Color.LIGHTBLUE);
DemoCircle.setStroke(Color.BLACK);
// Now Create a Stackpane
StackPane DemoStackPane = new StackPane();
// Margin for the above circle
DemoStackPane.setMargin(DemoCircle, new Insets(50, 50, 50, 50));
ObservableList li = DemoStackPane.getChildren();
// Add child nodes to the pane
li.addAll(DemoCircle, Demotext);
// Create a scene
Scene DemoScene = new Scene(DemoStackPane);
// Set title
DemoStage.setTitle("Centered Text Sample");
// Add scene to the stage
DemoStage.setScene(DemoScene);
// Display the results
DemoStage.show();
}
public static void main(String args[]) {
launch(args);
}
}
코드는 StackPane
에 텍스트와 원을 만들고 중심 위치의 기본 정렬을 사용합니다. 출력 참조:
Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.
LinkedIn Facebook