我创建了一个无模式对话框作为主窗口,但没有向窗口过程发送 WM_INITDIALOG 消息。
这就是我所做的。
- 使用 Visual Studio 的资源编辑器创建了一个对话框模板,并将其类名设置为自定义类。
- 使用 WNDCLASSEX 注册类,窗口程序,以及一些图标和画笔等。
- 使用 CreateDialog(),最后两个参数设置为 NULL,(父窗口和窗口过程)。
- 使用 IsDialogMessage()、TranslateMessage() 和 DispatchMessage() 创建了消息循环;
- 如果未处理任何消息,则默认在窗口过程中返回 DefDlgProc()。
我想不出还有什么重要的事情。除了没有收到 WM_INITDIALOG 消息外,一切正常。我已经这样做了,所以应用程序最小化到任务栏,如果需要我可以有一个菜单。
所以我的第一个问题是,我做了什么蠢事吗?
其次,我应该期望使用这个系统接收 WM_INITDIALOG 消息吗?如果没有,什么是初始化带有字符串的组合框的好方法。(我已经查看了 WM_ACTIVATE、WM_ACTIVATEAPP 等内容,但似乎没有什么合适的。并且组合框尚未在 WM_CREATE 创建。)提前致谢。