程序中有两个相邻编辑框(EDITBOX),有时关系是一上一下,有时一左一右。VC6写的。现在希望能象拖动资源管理器中树和列表中线那样,或者拉动VC的不同区块的边界线那样,可以横着拉动中线,方便地调整两个框的大小比例。当然,我的程序中两个编辑框有时是左右并排相邻,有时是上下相邻。猫扑那种也可以。不能把 EditBox 改成其它东西。因为这是个老程序了,有无数行相关代码。非常感谢!

解决方案 »

  1.   

    简单点说,就是响应鼠标消息用MoveWindow调整控件大小和位置。
      

  2.   

    把两个EDIT放到一个CSplitterWnd上去吧,想横想竖都可以,添加几行代码就能搞定。
      

  3.   

    楼上,我这个界面有一定复杂度。有时要隐藏掉一个框(任何一个),只留下一个,有时要把左右框实时变成上下的,框中的数据不能变。如果用CSplitterWnd,估计这种左右变上下不太好实现。
      

  4.   

    参看http://download.csdn.net/source/250482
      

  5.   

    多谢楼上!我感觉你的例子和三楼是一个思路,但也要面对我在4楼提的同样的问题,不知如何解决。当然,确实是一个例程,比较完整。我正在考虑2楼cnzdgs提的思路。另外,我对VC的边线移动方式比较感兴趣,用鼠标按下VC的边线并拖动时,边线并没有直接被拖动,这时会有一个与边线等长(或等高)的虚线在移动,直到鼠标松开,才会有真实的界面移动。这样处理,可以避免直接拖动时经常会发生的界面闪烁问题。是否有人知道这个在真实界面移动之前移动定位的虚线该如何实现呢?