FMessageDialog
时间: 2025-02-21 11:45:04 浏览: 12
### FMessageDialog 的使用方法
FMessageDialog 是 Unreal Engine 提供的一个用于显示消息对话框的类。这类对话框可以用来向用户展示信息、警告或错误提示,并允许用户做出响应。
#### 创建并显示简单的消息对话框
要创建一个简单的消息对话框,只需调用 `Open()` 静态函数并将所需参数传递给该函数:
```cpp
if (FMessageDialog::Open(EAppMsgType::Ok, NSLOCTEXT("MyModule", "SimpleText", "这是一个简单的消息")) == EAppReturnType::Ok)
{
// 用户点击了确认按钮后的处理逻辑
}
```
此代码片段会弹出一个带有“这是个简单的消息”的对话框[^1]。
#### 带有自定义标题的消息对话框
可以通过设置第二个参数来自定义对话框顶部显示的文字:
```cpp
TSharedPtr<SWindow> ParentWindow;
// ... 获取父窗口 ...
FMessageDialog::Open(
EAppMsgType::YesNo,
NSLOCTEXT("MyModule", "QuestionText", "你想继续吗?"),
&ParentWindow,
NSLOCTEXT("MyModule", "WindowTitle", "询问")
);
```
上述例子展示了如何构建一个具有特定标题栏文字以及两个选项(是/否)的选择型对话框。
#### 处理返回值
当需要根据用户的输入执行不同操作时,可以从 `Open` 函数获取返回的结果来判断用户选择了哪个按钮:
```cpp
EAppReturnType::Type Response = FMessageDialog::Open(
EAppMsgType::OkCancel,
NSLOCTEXT("MyModule", "ConfirmExit", "真的要退出程序吗?")
);
switch(Response)
{
case EAppReturnType::Ok:
UE_LOG(LogTemp, Log, TEXT("用户选择了确定"));
break;
case EAppReturnType::Cancel:
default:
UE_LOG(LogTemp, Log, TEXT("用户取消了操作"));
break;
}
```
这段代码实现了基于用户选择的不同反馈路径。
阅读全文
相关推荐








