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



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


5、获取控件的宽度、高度

     CRect rc;
     GetDlgItem(IDC_STATIC_1)->GetWindowRect(&rc);
     nYlWidth = rc.Width();
     nYlHeight = rc.Height();


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值