0

Javafx2 では、アイテムをペインに追加して非表示にすると、レイアウト内のスペースを占有しているようです。子供が非表示になった後、ペインにレイアウトを調整するように依頼する方法を知っている人はいますか?

以下は、私の問題を示すサンプル プログラムです。VBox には 3 つのボタンがあります。上部または中央のボタンをクリックすると、非表示になりますが、隙間が残ります。

public class VisibilityTest extends Application {

Button button1 = null;
Button button2 = null;
Button button3 = null;
VBox   box     = null;

@Override
public void start(Stage primaryStage) {
    button1 = new Button("Button 1");
    button2 = new Button("Button 2");
    button3 = new Button("Button 3");

    box = new VBox();
    box.getChildren().add(button1);
    box.getChildren().add(button2);
    box.getChildren().add(button3);
    button1.setOnAction(new EventHandler<ActionEvent>() {
        @Override
        public void handle(ActionEvent t) {
            button1.setVisible(false);
        }
    });
    button2.setOnAction(new EventHandler<ActionEvent>() {
        @Override
        public void handle(ActionEvent t) {
            button2.setVisible(false);
        }
    });
    button3.setOnAction(new EventHandler<ActionEvent>() {
        @Override
        public void handle(ActionEvent t) {
            button3.setVisible(false);
        }
    });
    Scene scene = new Scene(box, 300, 250);
    primaryStage.setScene(scene);
    primaryStage.show();
}
}
4

2 に答える 2

1

validate()上位コンポーネントの呼び出し。

于 2012-10-26T15:22:29.673 に答える
0

シーングラフからコントロールを削除する必要があります。

parent.getChildren().remove(theControl);
于 2012-10-26T17:07:23.423 に答える