在我的javaFX 2.0应用程序中,我需要替换使用awt.CardLayout的组件.Cardlayout具有堆栈功能,可显示堆栈中的顶级组件.我们也可以手动配置要显示的内容.
在javaFX 2.0中,有一个名为StackPane的布局.但它似乎不像Cardlayout.
Ser*_*nev 13
没有CardLayout,但您可以使用TabPane或只是切换组:
public void start(Stage stage) {
VBox vbox = new VBox(5);
Button btn = new Button("1");
Button btn2 = new Button("2");
final Pane cardsPane = new StackPane();
final Group card1 = new Group(new Text(25, 25, "Card 1"));
final Group card2 = new Group(new Text(25, 25, "Card 2"));
btn.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent t) {
cardsPane.getChildren().clear();
cardsPane.getChildren().add(card1);
}
});
btn2.setOnAction(new EventHandler<ActionEvent>() {
public void handle(ActionEvent t) {
cardsPane.getChildren().clear();
cardsPane.getChildren().add(card2);
}
});
vbox.getChildren().addAll(btn, btn2, cardsPane);
stage.setScene(new Scene(vbox));
stage.setWidth(200);
stage.setHeight(200);
stage.show();
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6638 次 |
最近记录: |