JavaFX如何实现模态窗口
来源:互联网 发布:h海南大学网络 编辑:程序博客网 时间:2024/05/31 13:15
JavaSE中,使用JOptionPane.show***window可以生产模态的对话框窗口,即用户必须点击对话框的按钮后,才能返回主窗口继续操作,否则无法进行其他操作。但是JavaFX 中没有提供类似JOptionPane的静态类来生成弹出的对话框窗口,若自己写的话,应该如何实现模态呢?
下面是一个实现dialog box:
import javafx.stage.*; import javafx.scene.*;import javafx.scene.paint.Color;import javafx.scene.control.*;import javafx.event.ActionEvent;import javafx.event.EventHandler;public class ModalDialog {Button btn;public ModalDialog(final Stage stg) {btn = new Button();final Stage stage = new Stage();//Initialize the Stage with type of modalstage.initModality(Modality.APPLICATION_MODAL);//Set the owner of the Stage stage.initOwner(stg);stage.setTitle("Top Stage With Modality");Group root = new Group();Scene scene = new Scene(root, 300, 250, Color.LIGHTGREEN);btn.setOnAction(new EventHandler<ActionEvent>() {public void handle(ActionEvent event) {stage.hide();}});btn.setLayoutX(100);btn.setLayoutY(80);btn.setText("OK");root.getChildren().add(btn);stage.setScene(scene);stage.show();}}import javafx.application.Application;import javafx.event.ActionEvent;import javafx.event.EventHandler;import javafx.scene.Group;import javafx.scene.Scene;import javafx.scene.control.Button;import javafx.scene.paint.Color;import javafx.stage.Stage;public class ModalTest extends Application {/*** @param args the command line arguments*/public static void main(String[] args) {Application.launch(ModalTest.class, args);}@Overridepublic void start(final Stage primaryStage) {primaryStage.setTitle("Hello World");Group root = new Group();Scene scene = new Scene(root, 500, 450, Color.LIGHTBLUE);Button btn = new Button();btn.setLayoutX(250);btn.setLayoutY(240);btn.setText("Show modal dialog");btn.setOnAction(new EventHandler<ActionEvent>() {public void handle(ActionEvent event) {ModalDialog md = new ModalDialog(primaryStage);}});root.getChildren().add(btn);primaryStage.setScene(scene);primaryStage.show();}}
0 0
- JavaFX如何实现模态窗口
- javafx模态窗口
- javafx如何实现模态/模式对话框
- JavaFX实现一个简单的模态窗口
- JavaFX如何显示多个Stage窗口
- jsp如何实现模态窗口
- JavaFX - 实现管理多个Stage窗口及源码解析
- JavaFx - 窗口的标题栏
- JavaFX窗口状态设置
- JavaFX透明窗口
- javafx弹出窗口
- JavaFX窗口状态设置
- javaFX 窗口关闭事件
- javafx 窗口始终悬浮
- swing中如何实现JFrame为模态窗口
- 如何实现透明窗口
- JavaFx 2 设置窗口图标.
- javafx窗口等比例缩放
- php7-nginx-composer 安装laravel
- 反射注解浅引
- tomcat 7内存调大也起不来
- 基于FFmpeg 和 OpenGL 的音视频合成+过渡特效【C++】
- Codeforces Round #386 (Div. 2) D. Green and Black Tea 数论+贪心
- JavaFX如何实现模态窗口
- 分布式架构的演变
- (写公式,解方程)LightOJ - 1062
- Android AsyncTask和Handler对比,ProgressBar的用法
- 在云服务器上部署项目(上)
- 创建Maven 父子工程
- ionicCSS04_卡片
- OSI模型与TCP/IP模型
- java内存溢出示例(堆溢出、栈溢出)