⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_50404.htm

📁 vc
💻 HTM
字号:
<p>
序号:50404 发表者:zhyzhj 发表日期:2003-08-20 18:39:13
<br>主题:如何把一个对话框打开后就全屏化
<br>内容:如何把一个对话框打开后就全屏化,还有就是说在一个小对话框中<BR>编辑好了控件的大小和位置,当这个对话框全屏化后,<BR>控件的大小和位置会随之相应的变化嘛,请各位指教。谢谢<BR>
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:小灿 回复日期:2003-08-24 13:09:08
<br>内容:我想你要在ONPaint()中重新计算控件位置了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:pansm 回复日期:2003-08-25 14:57:51
<br>内容:在ONINITDIALOG中利用SetWindowPos重新指定窗口的位置和大小即可。(当前桌面大大小可以利用int g_nScrWidth&nbsp;&nbsp;&nbsp;&nbsp;=GetSystemMetrics(SM_CXSCREEN;<BR>int g_nScrHeight=GetSystemMetrics(SM_CYSCREEN);获得。<BR>)
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:pansm 回复日期:2003-08-25 15:01:35
<br>内容:控件的大小和位置不会随之变化(但灰随你选择的字体变化),所以你要在ONINITDIALOG中设置你的每一个控件的字体(不要使用桌面设置的系统字体为妙),然后根据你的要求重新计算和移动你的每一个控件的位置和大小,这样做出来的界面才不会随系统的设置而产生令你意想不到的变化。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:zhyzhj 回复日期:2003-08-25 19:51:01
<br>内容:大哥,能把那个全屏说详细一点嘛,谢谢了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:pansm 回复日期:2003-08-26 11:05:17
<br>内容:1、获取当前桌面大小<BR>2、调用SetWindowPos函数设置窗口位置和大小,位置为(0,0)<BR>3、处理WM_NCHITTEST消息,返回HTCLIENT(目的是使窗口不能拖动)(也可以不处理,看你的需要)<BR>4、你也可以在别的地方重新设置窗口大小,方法是一样的<BR><BR>例如:<BR>BOOL CMultiVideoDialog::OnInitDialog() <BR>{<BR>....<BR>&nbsp;&nbsp;int nScrWidth&nbsp;&nbsp;&nbsp;&nbsp;=GetSystemMetrics(SM_CXSCREEN;<BR>&nbsp;&nbsp;int nScrHeight&nbsp;&nbsp; =GetSystemMetrics(SM_CYSCREEN);<BR>&nbsp;&nbsp;SetWindowPos(&amp;wndTop,0,0,nScrWidth,nScrHeight,SWP_SHOWWINDOW);//一启动就显示<BR> //SetWindowPos(&amp;wndTop,0,0,nScrWidth,nScrHeight,SWP_HIDEWINDOW);//启动时不显示<BR>....<BR>}<BR><BR>UINT CMultiVideoDialog::OnNcHitTest(CPoint point) <BR>{<BR>&nbsp;&nbsp; return HTCLIENT;<BR>&nbsp;&nbsp; //return CDialog::OnNcHitTest(point);<BR>}
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:zhyzhj 回复日期:2003-08-26 18:38:12
<br>内容:pansm先谢谢了,那个关于控件大小和位置的问题,有没有简便点的办法啊。你那个设置字体又怎样具体做呢?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:pansm 回复日期:2003-08-27 10:47:36
<br>内容:1、控件的位置我大小要通过Movewindow来进行设置<BR>2、设置字体,则需要两个步骤,一是创建字体,另一个是设置字体,如下:<BR>int nFontHeight=12;<BR>m_Font.DeleteObject();<BR>m_Font.CreateFont(nFontHeight,0,0,0,FW_NORMAL,FALSE,FALSE,0,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GB2312_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,<BR>&nbsp;&nbsp;&nbsp;&nbsp;DEFAULT_QUALITY,VARIABLE_PITCH, _T(&#34;宋体&#34;));<BR>m_SysInfoStatic.SetFont(&amp;m_Font);<BR>....<BR><BR><BR>控件的位置我大小要通过Movewindow来进行设置如下:<BR>m_static9.MoveWindow(x,y,nW,nH);<BR>。。。
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:zhyzhj 回复日期:2003-08-27 23:17:33
<br>内容:没看懂,具体实现个控件好嘛,谢谢了
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:pansm 回复日期:2003-08-29 11:18:21
<br>内容:上面已经是具体的实现了,你需要做的仅仅是替换字体大小(就是上面的nFontHeight参数)、映射你的控件(就是在将你的控件在向导里映射成一个控制变量,如m_SysInfoStatic)和移动控件的位置和大小(就是上面的x,y,nW,nH)<BR>如:<BR><BR>void CXSysStatus::DoDataExchange(CDataExchange* pDX)<BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;CDialog::DoDataExchange(pDX);<BR>&nbsp;&nbsp;&nbsp;&nbsp;//{{AFX_DATA_MAP(CXSysStatus)<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; DDX_Text(pDX, IDC_STATIC_USER, m_szUser);<BR>...........<BR>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;//}}AFX_DATA_MAP<BR>}<BR><BR>BOOL CXSysStatus::OnInitDialog() <BR>{<BR>&nbsp;&nbsp;&nbsp;&nbsp;CDialog::OnInitDialog();<BR>&nbsp;&nbsp;&nbsp;&nbsp;<BR>SetWindowPos(&amp;wndTop,0,0,350,280,SWP_NOMOVE|SWP_NOZORDER|SWP_SHOWWINDOW);<BR>//CenterWindow();<BR><BR><BR>m_szUser.MoveWindow(316,4,18,15);<BR>..............<BR>int nFontHeight=12;<BR>m_Font.DeleteObject();<BR>m_Font.CreateFont(nFontHeight,0,0,0,FW_NORMAL,FALSE,FALSE,0,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;GB2312_CHARSET,OUT_DEFAULT_PRECIS,CLIP_DEFAULT_PRECIS,<BR>&nbsp;&nbsp;&nbsp;&nbsp;DEFAULT_QUALITY,VARIABLE_PITCH, _T(&#34;宋体&#34;));<BR><BR>m_szUser.SetFont(&amp;m_Font);<BR>............
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -