添加自定义控件后Win32对话框无法显示的技术咨询
解决Win32对话框添加自定义控件后无法显示的问题
问题根源在于你添加的自定义控件资源定义存在错误:
CONTROL "Custom1",IDC_CUSTOM1,"",WS_TABSTOP,28,41,50,14
这条语句的第三个参数(控件对应的窗口类名)是空字符串,系统无法识别该控件的类型,直接导致对话框创建失败,因此About窗口无法正常显示。
你可以通过以下方式解决:
- 若只是误添加该控件,直接删除上述
CONTROL语句即可,这也是你已经验证过可行的方案。 - 若确实需要使用自定义控件,必须先在程序中注册对应的窗口类,再将RC语句里的第三个参数替换为你注册的类名。比如注册了名为
MyCustomControl的窗口类后,RC代码应修改为:
注册窗口类需要在程序初始化阶段调用CONTROL "Custom1",IDC_CUSTOM1,"MyCustomControl",WS_TABSTOP,28,41,50,14RegisterClassEx函数,传入包含窗口过程、样式等信息的WNDCLASSEX结构体。
内容的提问来源于stack exchange,提问作者Mihai Oltean
相关产品推荐
相关产品推荐

