Visual C++入门常见问题小结
2009-04-24 20:03:19 来源:WEB开发网13. 如何让窗口和 MDI窗口一启动就最大化和最小化?
先说窗口。
在 InitStance 函数中设定 m_nCmdShow的 取值。
m_nCmdShow=SW_SHOWMAXMIZED ; //最大化
m_nCmdShow=SW_SHOWMINMIZED ; //最小化
m_nCmdShow=SW_SHOWNORMAL ; //正常方式
MDI窗口:
如果是创建新的应用程序,可以用 MFC AppWizard 的Advanced 按钮并在MDI子窗口风格组中检测最大化或最小化; 还可以重载 MDI Window 的PreCreateWindow函数,设置WS_MAXMIZE or WS_MINMIZE;
如果从CMDIChildWnd派生,调用 OnInitialUpdate函数中的CWnd::ShowWindow来指定 MDI Child Window的风格。
14. 如何使程序保持极小状态?
在恢复程序窗体大小时,Windows会发送WM_QUERY-OPEN消息用 ClassWizard设置成员函数 OnQueryOpen() ,add following code:
Bool CMainFrame:: OnQueryOpen( )
{
Return false;
}
15. 如何限制窗口的 大小?
也就是 FixedDialog形式。 Windows 发送 WM_GETMAXMININFO消息来跟踪,响应它,在 OnGetMAXMININFO中写代码:
16. 如何使窗口不可见?
用SW_HIDE 隐藏窗口,可以结合 FindWindow,ShowWindow 控制。
17. 如何使窗口始终在最前方?
两种途径。
BringWindowToTop(Handle);
SetWindowPos函数,指定窗口的最顶风格,用WS_EX_TOPMOST扩展窗口的风格
Example:
void ToggleTopMost( CWnd *pWnd)
{
ASSERT_VALID(pWnd);
pWnd ->SetWindowPos(pWnd-> GetStyle( ) &WS_EX_TOPMOST)?
&wndNoTopMOST: &wndTopMost,0,0,0,0,SSP_NOSIZE|WSP_NOMOVE);
}
- ››Visual Basic 2008 数学函数
- ››Visual Studio2005中Smart Device的问题
- ››Visual Studio 中根据数据库字段动态生成控件
- ››Visual Studio 11全新黑色主题
- ››Visual Studio 2011 Beta新特性(一):安装VS201...
- ››Visual Studio自定义调试窗体两个小技巧
- ››Visual Studio 2005 Team Edition for Database P...
- ››Visual C#两分钟搭建BHO IE钩子
- ››Visual C++优化对大型数据集合的并发访问
- ››VISUAL C++中的OCX控件的使用方法
- ››Visual C++实现视频图像处理技术
- ››Visual C++制作一个Sniffer实例
更多精彩
赞助商链接