以下是一个基于 C++ 的 WinUI 对话框显示的例子:

#include <Windows.h>
#include <WinUser.h>
#include <string>
#include <sstream>

// 对话框过程函数
BOOL CALLBACK DialogProc(HWND hwndDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
    switch (message)
    {
    case WM_INITDIALOG:
        // 对话框初始化
        return TRUE;

    case WM_COMMAND:
        // 处理按钮事件
        switch (LOWORD(wParam))
        {
        case IDOK:
            EndDialog(hwndDlg, 0);
            return TRUE;

        case IDCANCEL:
            EndDialog(hwndDlg, 0);
            return TRUE;
        }
        break;
    }

    return FALSE;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR lpCmdLine, int nCmdShow)
{
    // 创建模态对话框,使用资源ID为IDD_DIALOG的对话框模板
    INT_PTR result = DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG), NULL, DialogProc);

    if (result == -1)
    {
        // 对话框创建失败
        MessageBox(NULL, 'Failed to create dialog', 'Error', MB_OK | MB_ICONERROR);
        return 1;
    }

    return 0;
}

其中,'DialogProc' 是对话框过程函数,用于处理对话框的消息。在此例中,我们简单地响应了 OK 和 Cancel 按钮的点击事件,调用 'EndDialog' 来结束对话框。'WinMain' 函数则是程序的入口函数,创建了一个模态对话框,并使用 'DialogBox' 函数来显示它。对话框的模板资源 ID 为 'IDD_DIALOG'。如果对话框创建失败,会弹出一个错误对话框。

C++ WinUI 对话框显示示例

原文地址: https://www.cveoy.top/t/topic/lq9W 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录