vc中实现控件的隐藏与显示

来源:互联网 发布:php ftp_pasv 编辑:程序博客网 时间:2024/05/19 04:04

一、隐藏控件    

        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));    //绘制对话框背景色

0 0
原创粉丝点击