我有一个SplitPane,我需要将布局分为25%和75%.此外,我需要禁止向右侧拖动超过25%的分割.但是我可以在25%的空间内拖动到任何程度.请帮忙.
Jam*_*s_D 11
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);
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11115 次 |
| 最近记录: |