【问题标题】:Get modeless dialog window handler获取无模式对话框窗口处理程序
【发布时间】:2014-04-10 13:16:03
【问题描述】:

我正在创建 modeless 对话框,用于接收获胜消息。

AfxBeginThread(RUNTIME_CLASS(modHolder));

如何获取无模式对话窗口的HWND

【问题讨论】:

  • 你的previous question呢?我告诉过你,你不需要为了接收消息而进行对话。为什么你提出问题然后忽略答案?
  • 我已经创建了无模式对话框并想测试这两个版本 - 无模式仅消息窗口。只是为了教育原因

标签: c++ visual-c++ mfc


【解决方案1】:

如何创建无模式对话框?

像这样?:

CYourDialog pDialog = new CYourDialog;
pDialog->Create(...);

那么你可以这样做:

HWND hWnd = pDialog->GetSafeHwnd();

【讨论】:

  • 好的,现在我有了 hWnd,如何将它传递给调用 AfxBeginThread 的主线程?
  • 您可以使用 HWND 作为参数向主应用程序线程发布或发送消息
  • 是的,但是如何告诉 modHolder 主应用程序的 HWND 是什么?我需要它来发布消息
【解决方案2】:

任何 MFC 窗口的 HWND 都是 CWnd 派生类的 m_hWnd。但是您发布的代码行中没有窗口。

【讨论】:

    猜你喜欢
    • 2023-04-06
    • 1970-01-01
    • 1970-01-01
    • 2019-06-05
    • 1970-01-01
    • 2012-07-19
    • 1970-01-01
    • 2017-04-23
    • 1970-01-01
    相关资源
    最近更新 更多