mfc如何让对话框全屏

方法一:

在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
中有详细代码


展开阅读全文

没有更多推荐了,返回首页