我在github上玩MFC github项目xtrader。我设法让它运行起来并且有一个我无法理解的问题。
这个项目是基于MFC的应用程序,主对话框xTraderDlg,当我运行它时,我发现对话框的高度不大,但宽度确实如此。
我已经阅读了这个来源很长一段时间,并审查处理SetWindowPos()或OnSize()的每个地方。没有跟踪如何做到这一点。即使我注释掉OnSize()或OnInitDialog(),高度仍然是不可改变的。
代码有一些技巧可以在配置文件中保存宽度和高度,并在下次启动时重新加载。但我相信这无关紧要。
代码也有这一行。 :: SetWindowPos(m_hWnd,HWND_TOPMOST,0,0,0,0,SWP_NOMOVE | SWP_NOSIZE); 然而,即使我删除此行,结果仍然是相同的。并且SWP_NOSIZE不会导致高度不可以。这确实是我的神话。
任何人都可以告诉我为什么?主对话框代码在这里。
https://github.com/lpswufe/xTrader/blob/master/xTraderDlg.cpp