如何在 VBox 中从上到下添加组件?
How do I add components from top to bottom in VBox?
我目前正在处理一个使用 JavaFX 的项目,我需要一个列表。问题是我不能使用列表视图,因为一个条目可能需要多个组件。
现在我正在使用 VBox 添加组件。这里的问题是我希望将最新的条目添加到 VBox 的顶部,而不是 VBox 的底部。
我好像不能添加图片,所以我把我的例子上传到Imgur:
http://imgur.com/a/Nc1sU
添加项目时使用正确的索引:
public class VBoxSample extends Application {
public static void main(String[] args) {
Application.launch(args);
}
@Override
public void start(Stage stage) {
VBox vBox1 = new VBox();
for( int i=0; i < 10; i++) {
vBox1.getChildren().add( new Text( "Item " + i));
}
VBox vBox2 = new VBox();
for( int i=0; i < 10; i++) {
vBox2.getChildren().add( 0, new Text( "Item " + i)); // add on top
}
HBox hBox = new HBox();
hBox.setSpacing(20);
hBox.getChildren().addAll(vBox1, vBox2);
stage.setScene(new Scene(new StackPane( hBox), 300, 250));
stage.show();
}
}
我目前正在处理一个使用 JavaFX 的项目,我需要一个列表。问题是我不能使用列表视图,因为一个条目可能需要多个组件。
现在我正在使用 VBox 添加组件。这里的问题是我希望将最新的条目添加到 VBox 的顶部,而不是 VBox 的底部。
我好像不能添加图片,所以我把我的例子上传到Imgur: http://imgur.com/a/Nc1sU
添加项目时使用正确的索引:
public class VBoxSample extends Application {
public static void main(String[] args) {
Application.launch(args);
}
@Override
public void start(Stage stage) {
VBox vBox1 = new VBox();
for( int i=0; i < 10; i++) {
vBox1.getChildren().add( new Text( "Item " + i));
}
VBox vBox2 = new VBox();
for( int i=0; i < 10; i++) {
vBox2.getChildren().add( 0, new Text( "Item " + i)); // add on top
}
HBox hBox = new HBox();
hBox.setSpacing(20);
hBox.getChildren().addAll(vBox1, vBox2);
stage.setScene(new Scene(new StackPane( hBox), 300, 250));
stage.show();
}
}