gpt4 book ai didi

c++ - 在 Dialog Message Proc 中获取应用程序对象指针

转载 作者:行者123 更新时间:2023-11-30 04:32:27 25 4
gpt4 key购买 nike

我们可以使用 this 作为 CreateWindow 的最后一个参数,并在 WndProc 中获取指向应用程序对象的指针,如下所示:

if(message == WM_CREATE)
{
CREATESTRUCT* cs = (CREATESTRUCT*)lParam;
pApp = (DemoApp*)cs->lpCreateParams;
return 0;
}

在 Dialog Message Proc 中访问此指针的最佳方法是什么?解决方案是做一个全局指针吗?

最佳答案

您可以使用 WM_INITDIALOG 获取额外的初始化数据,请参阅 WM_INITDIALOG message :

lParam

Additional initialization data. This data is passed to the system as the lParam parameter in a call to the CreateDialogIndirectParam, CreateDialogParam, DialogBoxIndirectParam, or DialogBoxParam function used to create the dialog box. For property sheets, this parameter is a pointer to the PROPSHEETPAGE structure used to create the page. This parameter is zero if any other dialog box creation function is used.

也就是说,您可以将 lParam 作为参数传递给 CreateDialogParam,对话框过程将通过 WM_INITDIALOG 消息接收它。

关于c++ - 在 Dialog Message Proc 中获取应用程序对象指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7653471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com