如何使用JavaFX创建弹出框
下面的代码创建了一个填充有按钮的网格。我想知道如何添加一个弹出另一个带有数字的网格框的方法。当在第二个弹出网格框中选择编号时,它会更改单击的原始按钮上的标签。以下面的示例为例,有人单击带有文本“1”的按钮。一个标有1到5的按钮的网格弹出。单击按钮5。弹出的网格框消失,带有文本“1”的按钮现在更改为“5”如何使用JavaFX创建弹出框,java,javafx,popup,Java,Javafx,Popup,下面的代码创建了一个填充有按钮的网格。我想知道如何添加一个弹出另一个带有数字的网格框的方法。当在第二个弹出网格框中选择编号时,它会更改单击的原始按钮上的标签。以下面的示例为例,有人单击带有文本“1”的按钮。一个标有1到5的按钮的网格弹出。单击按钮5。弹出的网格框消失,带有文本“1”的按钮现在更改为“5” 导入javafx.application.*; 导入javafx.event.EventHandler; 导入javafx.geometry.Insets; 导入javafx.geometry.
导入javafx.application.*;
导入javafx.event.EventHandler;
导入javafx.geometry.Insets;
导入javafx.geometry.Pos;
导入javafx.stage.*;
导入javafx.scene.*;
导入javafx.scene.layout.*;
导入javafx.scene.paint.Color;
导入javafx.scene.paint.paint;
导入javafx.scene.control.*;
导入javafx.scene.input.MouseEvent;
公共类GUI扩展应用程序{
公共静态void main(字符串[]args){
应用程序启动(args);
}
@覆盖公共无效开始(阶段primaryStage)
{
最终int HGAP=2;
最终积分VGAP=2;
最终int按钮大小=50;
最终int插图=5;
最终整数大小=4;
GridPane root=新的GridPane();
根。设置填充(新插图(插图));
根.setHgap(HGAP);
root.setVgap(VGAP);
根部设置对齐(位置中心);
最终按钮[][]btn=新按钮[尺寸][尺寸];
最终油漆背景=颜色。绿松石色;
int指数=0;
for(int theCol=0;theCol
Yoy也可以这样尝试
GridPane grid = new GridPane();
grid.setHgap(10);
grid.setVgap(10);
final Text infoText = new Text();
grid.setPadding(new Insets(10, 10, 10, 10));
grid.add(infoText, 0, 4, 2, 1);
final Dialog dlg = new Dialog(null, "dialog");
dlg.setContent(grid);
dlg.show();
您可以使用
弹出控件
:
PopupControl popup = new PopupControl();
popup.getScene().setRoot(yourGridPane);
popup.show(yourGridPane.getScene().getWindow());
在您的按钮侦听器中,您可以调用
popup.hide()
关闭弹出窗口并更新按钮文本我想这里有一个解释:我认为有些链接中有临时链接,其中包含代码示例
PopupControl popup = new PopupControl();
popup.getScene().setRoot(yourGridPane);
popup.show(yourGridPane.getScene().getWindow());