用VC代码隐藏、显示、移动、改变大小控件 分类: C++ 2009-03-11 23:57 1239人阅读 评论(1) 收藏 举报 转自网易:轻轻一点星BLOG,感谢作者
1、隐藏控件
CWnd *pWnd; pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT1为控件ID号 pWnd->ShowWindow( SW_HIDE ); //隐藏控件
2、显示控件 CWnd *pWnd; pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT为控件ID号 pWnd->ShowWindow( SW_SHOW ); //显示控件
3、调整控件位置并赋予大小设定
CWnd *pWnd; pWnd = GetDlgItem( IDC_EDIT1 ); //获取控件指针,IDC_EDIT1为控件ID号 pWnd->MoveWindow( CRect(0,0,100,100) ); //在窗口左上角显示一个宽100、高100的编辑控件
这里可以使用SetWindowPos()函数,使用更灵活,多用于只修改控件位置而大小不变或只修改大小而位置不变的情况: BOOL SetWindowPos(const CWnd* pWndInsertAfter,int x,int y,int cx,int cy,UINT nFlags); 第一个参数一般设为NULL; x、y控件位置;cx、cy控件宽度和高度; nFlags常用取值: SWP_NOZORDER:忽略第一个参数; SWP_NOMOVE:忽略x、y,维持位置不变; SWP_NOSIZE:忽略cx、cy,维持大小不变;
4、设置对话框的背景颜色
在OnPaint() 函数中的else下增加如下代码:
CPaintDC dc(this); CRect rect; GetClientRect(&rect); //得到当前对话框的尺寸 dc.FillSolidRect(&rect,RGB(192,248,202)); //绘制对话框背景色
|