我正在编写一个程序,它有两个 Pane (通过 CSplitter
),但是我在弄清楚如何调整每个帧中的控件大小时遇到了问题。为简单起见,有人可以告诉我如何为带有单个 CEdit
控件的基本框架执行此操作吗?
我很确定这与 CEdit::OnSize()
函数有关...但我并没有真正到达任何地方...
谢谢! :)
最佳答案
窗口在调整大小后立即收到 WM_SIZE 消息(由 MFC 中的 OnSize 处理程序处理),因此 CEdit::OnSize 不是您要查找的。p>
你应该在你的框架类和这个处理程序中添加 OnSize 处理程序作为 Rob pointed out您将获得框架客户区域的宽度和高度,然后您应该添加调整控件大小和位置的代码。
类似的东西
void MyFrame::OnSize(UINT nType, int w, int h)
{
// w and h parameters are new width and height of your frame
// suppose you have member variable CEdit myEdit which you need to resize/move
myEdit.MoveWindow(w/5, h/5, w/2, h/2);
}
关于c++ - 在 MFC 中调整控件大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/127514/