mfc如何让对话框全屏

  • Post author:
  • Post category:其他



方法一:


在Dialog::OnInitDialog()中加入:

ModifyStyle(WS_CAPTION,0,0);  // 如果只是要普通的全屏,不想去掉标题栏,就不用第一个语句
SendMessage(WM_SYSCOMMAND,SC_MAXIMIZE,0);



不过这种方法不方便调整控件的位置,此时可以考虑方法二



方法二:



先取得分辨率,

int cx,cy; 
cx = GetSystemMetrics(SM_CXSCREEN); 
cy = GetSystemMetrics(SM_CYSCREEN); 


再用MoveWindow

CRect rcTemp; 
rcTemp.BottomRight() = CPoint(cx, cy); 
rcTemp.TopLeft() = CPoint(0, 0); 
MoveWindow(&rcTemp);



方法二因为获得了窗口与屏幕的参数,所以当想调整Dialog上的一些控件位置时就方便许多。

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


不过


呢,

只能在OnSize里面自己调整控件的大小的位置,

需要自己一个一个地调整所有需要调整的控件的大小和位置。




方法请看:




三步解决MFC窗口变动后控件的大小


一 、在头文件中定义 POINT Old;//存放对话框的宽和高。



二 、添加 WM_SIZE消息:



三 、添加reseze函数








http://blog.csdn.net/Small_hunter/article/details/5640101


中有详细代码