如何获取基于对话框模板的CDialog的Window Rect。该对话框不可见,也不可见
答案 0 :(得分:1)
使用CDialog可能会很棘手,因为如果你没有显示CDialog,就不会创建窗口句柄,你也无法调用GetClientRect。
我建议调用CreateDialogIndirect来创建对话框,然后你可以让客户端直接。你不需要显示对话框。我认为只要创建窗口句柄,GetClientRect就可以工作。我不是专家,自从我写了MFC代码以来已经很多年了。
答案 1 :(得分:0)
嗯...
在Windows API-land中,您可以自己加载资源(FindResourceEx,LoadResource),了解对话框模板资源的二进制结构(http://blogs.msdn.com/oldnewthing/archive/2004/06/22/162360.aspx处的一些线索),在对话框中转换对话框的大小从对话框单元到像素的模板(请查看http://msdn.microsoft.com/en-us/library/ms645475(VS.85).aspx)。
我很好奇你为什么要这样做。