870920 Menu

DialogWindow对话框详解

DialogWindow对话框相当于DocumentWindow的“简易版本”,标题栏中只有一个关闭按钮,并且可设置按下ESC键后是否关闭本窗口。除此之外,DocumentWindow的一切属性和行为,本类皆拥有。该类有两个静态函数,可快速显示一个包含给定组件的模态对话框 :showDialog()和showModalDialog(),前者无返回值,后者有返回值。

静态函数ShowModalDialog()的原型详解:

通常,一些临时弹出的、带有交互功能的、模态性质的窗口可自定义一个对话框类,继承自DialogWindow。在重写的closeButtonPressed()函数中使本类不可视:

内容组件使用该自定义对话框,通常使其模态运行,并使用JUCE类库的模态宏包裹相关语句(防止安卓平台下出问题,该平台不支持模态窗口)。

另外一种更简单的运行模态对话框的办法是使用DialogWindow::LaunchOptions结构体对象。而且往往在静态函数中临时创建该结构体,示例: