画布上画框,画的框如何置前
类似于Delphi的空间拖动一样,在拖动时显示的黑框在空间的前面
在一个ScrollBox上有个空间,在空间的mousedown事件中画框,
但是移动这个框时,框显示在控件的后面,我需要的是,框显示在空间的前面,不要被盖住。

解决方案 »

  1.   

    我同样有此问题,我想用重绘的方法来实现,但是出了问题:
    http://community.csdn.net/Expert/topic/3965/3965659.xml?temp=.5027887
      

  2.   

    看了一个Splitter的源代码
    答案全部在里面。呵呵
      

  3.   

    可以指点一下吗,对TCanvas不是很熟
      

  4.   

    不是Canvas。而是Windows的GDI
    打开Splitter的源码,拿个MSDN,用心看下去,其实代码也不多。
      

  5.   

    就用 GDI画取screen 的DC!
      

  6.   

    在delphi中,点击控件拖运时,控件的位置并没有改变,只是显示了一个框框给你
    只有在你鼠标弹起的时候,才会改变你的控件的位置楼主想要显示的框框置前,那么只要按这个原理就可以实现呀我也没有做过,只是纸上谈兵啦,:-)
      

  7.   

    听我的话吧,去好好看看Spliter的代码吧,他是从TGraphicControl继承下来的,他也是在父窗口中画出来的,但他为什么能够画在所有控件的上面呢。
    这就是GDI的一种样式,答案全部在里面,看懂了代码,做你的那种东西很简单的啊。