TASKDIALOGCONFIG 结构用于配置和启动任务对话框(Task Dialog)。这个结构在 Commctrl.h 头文件中定义。以下是 TASKDIALOGCONFIG 结构的定义:
typedef struct _TASKDIALOGCONFIG {
    UINT        cbSize;
    HWND        hwndParent;
    HINSTANCE   hInstance;
    TASKDIALOG_FLAGS dwFlags;
    TASKDIALOG_COMMON_BUTTON_FLAGS dwCommonButtons;
    PCWSTR      pszWindowTitle;
    union {
        HICON       hMainIcon;
        PCWSTR      pszMainIcon;
    } DUMMYUNIONNAME;
    PCWSTR      pszMainInstruction;
    PCWSTR      pszContent;
    UINT        cButtons;
    const TASKDIALOG_BUTTON *pButtons;
    int         nDefaultButton;
    UINT        cRadioButtons;
    const TASKDIALOG_BUTTON *pRadioButtons;
    int         nDefaultRadioButton;
    PCWSTR      pszVerificationText;
    PCWSTR      pszExpandedInformation;
    PCWSTR      pszExpandedControlText;
    PCWSTR      pszCollapsedControlText;
    union {
        HICON       hFooterIcon;
        PCWSTR      pszFooterIcon;
    } DUMMYUNIONNAME2;
    PCWSTR      pszFooter;
    PFTASKDIALOGCALLBACK pfCallback;
    LONG_PTR    lpCallbackData;
    UINT        cxWidth;
} TASKDIALOGCONFIG;

  •  cbSize: 结构体的大小,以字节为单位,必须设置为 sizeof(TASKDIALOGCONFIG)。


  •  hwndParent: 任务对话框的父窗口句柄。


  •  hInstance: 包含资源的模块实例的句柄,通常是主程序的实例句柄。


  •  dwFlags: 一组标志,用于指定任务对话框的行为,例如图标、按钮、默认按钮等。可以是以下值的组合:

  - TDF_ENABLE_HYPERLINKS: 启用超链接。
  - TDF_USE_HICON_MAIN: 使用 hMainIcon 字段指定的图标。
  - TDF_USE_HICON_FOOTER: 使用 hFooterIcon 字段指定的图标。
  - TDF_ALLOW_DIALOG_CANCELLATION: 允许通过点击 [x] 按钮关闭对话框。

  •  dwCommonButtons: 一组标志,指定显示哪些通用按钮。可以是以下值之一:

  - TDCBF_OK_BUTTON
  - TDCBF_YES_BUTTON
  - TDCBF_NO_BUTTON
  - TDCBF_CANCEL_BUTTON
  - TDCBF_RETRY_BUTTON
  - TDCBF_CLOSE_BUTTON

  •  pszWindowTitle: 任务对话框的标题。


  •  hMainIcon: 主图标的句柄。


  •  pszMainIcon: 主图标的资源路径。


  •  pszMainInstruction: 主要的对话框指示信息。


  •  pszContent: 对话框的主要文本内容。


  •  cButtons: 按钮的数量。


  •  pButtons: 指向 TASKDIALOG_BUTTON 数组的指针,用于定义自定义按钮。


  •  nDefaultButton: 默认选中的按钮的 ID。


  •  cRadioButtons: 单选按钮的数量。


  •  pRadioButtons: 指向 TASKDIALOG_BUTTON 数组的指针,用于定义自定义单选按钮。


  •  nDefaultRadioButton: 默认选中的单选按钮的 ID。


  •  pszVerificationText: 用于显示复选框的文本。


  •  pszExpandedInformation: 显示在对话框底部的扩展信息。


  •  pszExpandedControlText: 展开按钮上的文本。


  •  pszCollapsedControlText: 折叠按钮上的文本。


  •  hFooterIcon: 底部图标的句柄。


  •  pszFooterIcon: 底部图标的资源路径。


  •  pszFooter: 底部文本。


  •  pfCallback: 回调函数,用于接收任务对话框的通知和事件。


  •  lpCallbackData: 回调函数的用户自定义数据。


  •  cxWidth: 对话框的宽度。


这个结构体允许你在创建任务对话框时提供丰富的配置选项,以满足特定的应用需求。


转载请注明出处:http://www.zyzy.cn/article/detail/24973/Win32 API/Commctrl.h/TASKDIALOGCONFIG