[ 问题求解 ] Windows编程:直接调用DialogBox生成对话框导致界面混乱
问题描述
我使用 Visual studio 2022 创建 Windows 桌面应用项目模板 , 然后删除了主源程序的所有代码,替换为如下 :
#include <windows.h>
#include <tchar.h>
#include <commctrl.h>
#include "resource.h"
INT_PTR WINAPI dialogProc(HWND hWnd , UINT uMsg , WPARAM mParam , LPARAM lParam);
int WINAPI WinMain( HINSTANCE hInstance , HINSTANCE hPreInstance , LPSTR lpCmdLine , int nCmdShow ) {
DialogBox( hInstance , MAKEINTRESOURCE(IDD_ABOUTBOX) , NULL , dialogProc);
}
INT_PTR WINAPI dialogProc(HWND hWnd, UINT uMsg, WPARAM mParam, LPARAM lParam) {
return TRUE;
}
经过运行代码,出现如下问题 :

如图,各控件排版混乱。以下资源文件视图

随后,通过创建空项目,在主要代码不变的情况下添加资源,自定义窗口控件及其布局,仍然出现此问题。
请问如何解决?
这是我的环境信息 :
编译环境 :
- Visual studio 2022. v17.2.3
系统环境 :
- Windows 11 家庭中文版 21H2
...全文
相关推荐
C 对话框DialogBox
NULL 博文链接:https://hudeyong926.iteye.com/blog/1544287
不调用API实现的文件选取对话框
通过ACCESS自身的功能,不用引用API,而实现的一个WINDOWs2000文件选取对话框! 这只是一个举例,大家查查帮助,就可以实现目录的选取,文件的多选,文件的例存等!
windows的对话框
该文档描述了windows开发过程中的对话框窗口,包括了对话框的种类,使用方式,对话框窗口特有的窗口过程函数,对话框的资源模板和内存模板的创建方法。
Windows SDK编程之简单对话框.docx
Windows SDK编程之简单对话框
SDK:用CreateWindowEx创建模态对话框
SDK下,我们通常用DialogBox来创建模态对话框。DialogBox并不是一个Win32的API,它实际上是一个宏,调用DialogBoxParam来创建对话框。


界面
