我想让设计两个按钮 一个开始按钮 一个暂停按钮  点击这个开始按钮的时候能够在开始按钮上显示进度条 然后再点击暂停按钮的时候进度条能够暂停  
可是我发现如果在对话框按钮上添加progress控件的话那个开始按钮就被覆盖了 只有点击的时候才能显示出来
我想在这个开始按钮上动态创建这个progress控件  可是不知道怎么得到这个按钮的 rect   我是个vc新手 希望能够得到高手的指导  慢慢学习  寻找老师!

解决方案 »

  1.   

    1)不知道怎么得到这个按钮的 rect 
    GetWindowRect() 然后ScreenToClient(&rect)
    2)开始按钮就被覆盖
    把进度条和开始按钮的位置和大小调节下.
    3)开始按钮上显示进度条
    进度条创建时以按钮为父窗口试试
      

  2.   

    你好,首先谢谢你的回答 
    我的意思是在这个开始按钮上添加progress控件,可是如果采用静态添加的方式(把控件板上的progress直接拉上去的话) 那个按钮就被覆盖了 我想让产生的效果是点击那个开始按钮然后进度条就能在按钮上开始执行 这样的话那个按钮就显示不出来了 我准备采用动态创建progress的方法试试,不知道能不能行的通?
      

  3.   

    另外 您知不知道有什么好的方法 让那个暂停按钮控制进度条的终止 谢谢!应该是在ontimer中该吧!我对这个wm_timer消息理解的还不是很深入。
      

  4.   

    可以在SetTimer,OnTimer中去调用CProgressCtrl::SetPos();也可以通过线程给主界面发送自定义消息,在自定义消息的响应函数中去更新滚动条信息
      

  5.   

    你要清楚进度条的SetPos()就是设置进度条当前的所处位置就行了。。按暂停按钮时候可以使定时器停止嘛
      

  6.   

    用于一个定时器不断的SetPos()就完了,多简单的事啊。不过要注意一点的是SetPos()和定时器最好放在两个不同线程里,不然屏幕刷新可能会卡。
      

  7.   

    setposition?看起来好像是音乐播放器进度条,呵呵