4
저는 SplitPane을 가지고 있고 레이아웃을 25 %와 75 %로 나누어야합니다. 또한 25 % 나눠서 오른쪽으로 드래그하지 못하게해야합니다. 그러나 25 % 공간 내에서 어느 정도 드래그 할 수 있습니다. 도와주세요.SplitPane JavaFX에서 구분선을 잠그는 방법은 무엇입니까?
저는 SplitPane을 가지고 있고 레이아웃을 25 %와 75 %로 나누어야합니다. 또한 25 % 나눠서 오른쪽으로 드래그하지 못하게해야합니다. 그러나 25 % 공간 내에서 어느 정도 드래그 할 수 있습니다. 도와주세요.SplitPane JavaFX에서 구분선을 잠그는 방법은 무엇입니까?
SplitPane
은 포함하고있는 구성 요소의 최소 및 최대 치수를 준수합니다 (items
). 따라서 원하는 동작을 얻으려면 왼쪽 구성 요소의 maxWidth
을 splitPane.maxWidthProperty().multiply(0.25)
으로 바인딩하십시오.
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.Label;
import javafx.scene.control.SplitPane;
import javafx.scene.layout.BorderPane;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
public class ConstrainedSplitPane extends Application {
@Override
public void start(Stage primaryStage) {
StackPane leftPane = new StackPane(new Label("Left"));
StackPane rightPane = new StackPane(new Label("Right"));
SplitPane splitPane = new SplitPane();
splitPane.getItems().addAll(leftPane, rightPane);
splitPane.setDividerPositions(0.25);
//Constrain max size of left component:
leftPane.maxWidthProperty().bind(splitPane.widthProperty().multiply(0.25));
primaryStage.setScene(new Scene(new BorderPane(splitPane), 800, 600));
primaryStage.show();
}
public static void main(String[] args) {
launch(args);
}
}