递归火山软件开发平台

标题: 一切尽在不言中,这个信息框太强大了。 [打印本页]

作者: server    时间: 2024-3-17 23:34
标题: 一切尽在不言中,这个信息框太强大了。
我研究不透。
比喻说,进度之类的怎么玩,没搞明白。
那位火友研究一下呢。
(, 下载次数: 29)
  1. <火山程序 类型 = "通常" 版本 = 1 />

  2. 方法 msgBox <公开 静态 类型 = 整数 折叠 折叠2 @视窗.外部头文件 = "CommCtrl.h" @视窗.预定义宏 = "WINVER=0x0600,_WIN32_WINNT=0x0600"
  3.         @禁止流程检查 = 真>
  4. {
  5.     @ TASKDIALOGCONFIG config = { 0 };
  6.     @ config.cbSize = sizeof(TASKDIALOGCONFIG);
  7.     @ config.hwndParent = NULL;
  8.     @ config.pszWindowTitle = L"标题";
  9.     @ config.pszMainInstruction = L"主提示";
  10.     @ config.pszContent = L"内容";
  11.     @ config.pszMainIcon = TD_SHIELD_ICON;
  12.     @ config.pfCallback = (PFTASKDIALOGCALLBACK)&@<pfCallback>;
  13.     @ config.dwCommonButtons = TDCBF_OK_BUTTON |TDCBF_YES_BUTTON |TDCBF_NO_BUTTON | TDCBF_CANCEL_BUTTON| TDCBF_RETRY_BUTTON| TDCBF_CLOSE_BUTTON;
  14.     @ config.dwFlags =  TDF_SHOW_PROGRESS_BAR ;
  15.     @ return (int) TaskDialogIndirect(&config, NULL, NULL, NULL);


  16. }

  17. 方法 pfCallback <静态 类型 = 变整数
  18.         注释 = "TaskDialogCallbackProc 函数是与 TaskDialogIndirect 函数一起使用的应用程序定义的函数。 当发生各种事件时,它从任务对话框接收消息。"
  19.         注释 = "PFTASKDIALOGCALLBACK 类型定义指向此回调函数的指针。 TaskDialogCallbackProc 是应用程序定义的函数名称的占位符。" 折叠 折叠2>
  20. 参数 hWnd <类型 = 变整数 注释 = "TaskDialog 窗口的句柄。 使用 TDN_DESTROYED 调用回调过程后,不要继续向 hwnd 发送消息。">
  21. 参数 Msg <类型 = 整数 注释 = "以下通知之一。" 注释 = "TDN_BUTTON_CLICKED            指示已选择按钮。 按钮的命令 ID 由 wParam 指定。"
  22.         注释 = "TDN_CREATED                   指示已创建任务对话框。" 注释 = "TDN_DESTROYED                 指示任务对话框已被销毁。"
  23.         注释 = "TDN_DIALOG_CONSTRUCTED        指示已创建任务对话框,但尚未显示。"
  24.         注释 = "TDN_EXPANDO_BUTTON_CLICKED    指示已选择展开按钮。"
  25.         注释 = "TDN_HELP                      指示在任务对话框具有焦点时已按下 F1 键。"
  26.         注释 = "TDN_HYPERLINK_CLICKED         指示已选择超链接。 指向链接文本的指针由 lParam 指定。"
  27.         注释 = "TDN_NAVIGATED                 指示导航已发生。"
  28.         注释 = "TDN_RADIO_BUTTON_CLICKED      指示已选择单选按钮。 单选按钮的命令 ID 由 wParam 指定。"
  29.         注释 = "TDN_TIMER                     指示已触发任务对话框计时器。 总已用时间由 wParam 指定。 可以通过向 hwnd 参数指定的窗口发送TDM_SET_PROGRESS_BAR_POS消息来更新进度栏。"
  30.         注释 = "TDN_VERIFICATION_CLICKED      指示已选中“任务对话框验证检查”框。" 折叠2>
  31. 参数 wParam <类型 = 整数 注释 = "指定其他通知信息。 此参数的内容取决于 uNotification 参数的值。">
  32. 参数 lParam <类型 = 整数 注释 = "指定其他通知信息。 此参数的内容取决于 uNotification 参数的值。">
  33. 参数 lpRefData <类型 = 变整数 注释 = "指向应用程序特定数据的指针。 这是用于创建任务对话框的结构 TASKDIALOGCONFIG 的 lpCallbackData 成员指向的数据。">
  34. {
  35.     调试输出 ("pfCallback", hWnd, Msg, wParam, lParam, lpRefData)


  36.     返回 (0)
  37. }
复制代码


作者: hrq520    时间: 2024-3-17 23:59
本帖最后由 hrq520 于 2024-3-18 00:02 编辑

C++   不会搞   搞成火山中文代码看看
作者: server    时间: 2024-3-18 00:26
本帖最后由 server 于 2024-3-18 00:27 编辑

我要说我飘了,你可能不信

(, 下载次数: 32)
(, 下载次数: 31)

作者: 山梦    时间: 2024-3-18 08:45
大佬厉害! 英文 看不懂
作者: 67564226    时间: 2024-3-18 09:40
确实很强大, 有些地方真用得着.
作者: quary888    时间: 2024-3-18 17:15
本帖最后由 quary888 于 2024-3-18 17:17 编辑

精易论坛有成品  你直接翻译更省力 @7ian  这位大神的作品


作者: 恒浩    时间: 2024-4-7 01:30
这个信息框怎么设置置顶啊
作者: oki520    时间: 2024-4-7 12:05
这个没有倒计时显示
作者: server    时间: 2024-4-7 15:59
风格里有一个周期事件风格每200毫秒触发一次回调。
你可以在回调里去出信息框组件,然后更改内容。
当然 windows好像也提供了重置这个信息框的API。具体的你自己研究。
哎/估计我讲的都是废话。




欢迎光临 递归火山软件开发平台 (https://bbs.voldp.com/) Powered by Discuz! X3.4