首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >JavaFx布局:消失/无组织窗格

JavaFx布局:消失/无组织窗格
EN

Stack Overflow用户
提问于 2018-10-09 08:46:35
回答 1查看 480关注 0票数 0

我有一个背景窗格,用于绘制与BorderPane、VBox和HBox一起使用时不显示的对象。此外,我的BorderPane没有正确定位布局(左、下、右)。我尝试使用多个不同的窗格并向其中添加VBox和HBox,但是我遇到了类似的错误,布局不符合预期,并且主绘图窗格(画布)消失。

代码语言:javascript
复制
BorderPane bp = new BorderPane();
button1 = new Button("Undo");
button2 = new Button("Erase");
HBox hb = new HBox(10);
hb.getChildren().addAll(button1, button2);

TilePane tp = new TilePane();
vb = new VBox();
vb.setPadding(new Insets(10, 10, 10, 10));
vb.setSpacing(25);
vb.setStyle("-fx-padding: 10;" + 
        "-fx-border-style: solid inside;" + 
        "-fx-border-width: 2;" +
        "-fx-border-insets: 5;" + 
        "-fx-border-radius: 5;" + 
        "-fx-border-color: black;");

colorCombo = new ComboBox<String>();
colorCombo.getItems().addAll("Black","Blue","Green","Red","Yellow","Orange","Pink");
colorCombo.setValue("Black");
colorCombo.setMinWidth(100);

ToggleGroup group1 = new ToggleGroup();

rbutton1 = new RadioButton("Rectangle");
rbutton1.setToggleGroup(group1);
rbutton1.setMinWidth(80);
rbutton1.setSelected(true);
rbutton2 = new RadioButton("Circle");
rbutton2.setToggleGroup(group1);
rbutton2.setMinWidth(80);

canvas = new Pane();
canvas.setStyle("-fx-background-color: beige;");

vb.getChildren().addAll(colorCombo, rbutton1, rbutton2);
tp.getChildren().add(vb);
bp.setLeft(tp);
bp.setBottom(hb);
bp.setRight(canvas);
this.getChildren().addAll(bp);

TilePane和BorderPane是我最新的实验。我使用bp.setRight(canvas);查看是否可以让画布显示出来,尽管我希望画布是整个背景,而不仅仅是右边。画布未显示。

EN

回答 1

Stack Overflow用户

发布于 2018-10-09 12:39:28

我创建了三个独立的GridPanes,并将vbox、hbox和canvas (在设置最小高度和宽度之后)添加到网格窗格,然后将网格窗格添加到BorderPane。这修复了我的程序的布局。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52711861

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档