W wudwlf Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-19 #1 请问在delphi中如何做一个线条控件,该控件可以得到焦点,可以有自己的事件(当然 可以是斜线,可以覆盖任何组件)
W wjiachun Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-19 #2 我又huizhang的TLine控件源码,完全符合你的要求,另外可以画箭头。 需要请给我发email。
W wjiachun Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-19 #4 http://wjiachun.edu.chinaren.com/down/TLine.zip
W wudwlf Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-19 #7 复制进蚂蚁也不行,要出错,能发邮件给我吗,谢谢!!!
W wjiachun Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-19 #10 原来是我Chinaren的50M空间用完了 :-( 我今晚回去找找,明天发给你可以么?
W wudwlf Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-19 #11 OK,等着你的Email!! 谢谢·!!!!!!!!!!!!!!!!!!!!
W wudwlf Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-20 #12 谢谢您发过来的Tline控件,该控件做得非常的好,但对于我们的需求还有一个较大的缺 憾,即,一条线占用的实际上是以该线为对角线的一个矩形区域,如果将线条控件置于面上,那 么该线条所在的矩形区域内的其他控件(如Tshape)将接受不到事件,请问如何解决。(也 就是说线条控件影响了其他控件的使用) 望指教。
谢谢您发过来的Tline控件,该控件做得非常的好,但对于我们的需求还有一个较大的缺 憾,即,一条线占用的实际上是以该线为对角线的一个矩形区域,如果将线条控件置于面上,那 么该线条所在的矩形区域内的其他控件(如Tshape)将接受不到事件,请问如何解决。(也 就是说线条控件影响了其他控件的使用) 望指教。
B BaKuBaKu Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-20 #13 如果是这样就复杂了,你又需要把 Line 放在上面,以便不被 Button 等覆盖,又要不把下面 的控件覆盖,等于是又要覆盖别人,又不要完全覆盖别人。 这个控件应该是基于 TWinControl 的后代的,如果有源代码,建议修改一下,把控件窗口句柄 的 Region 设置成线条所覆盖的区域。 用 BeginPath --> MoveTo --> LineTo --> EndPath --> PathToRegion --> SetWindowRgn 这样的序列应该能得到你要的效果。
如果是这样就复杂了,你又需要把 Line 放在上面,以便不被 Button 等覆盖,又要不把下面 的控件覆盖,等于是又要覆盖别人,又不要完全覆盖别人。 这个控件应该是基于 TWinControl 的后代的,如果有源代码,建议修改一下,把控件窗口句柄 的 Region 设置成线条所覆盖的区域。 用 BeginPath --> MoveTo --> LineTo --> EndPath --> PathToRegion --> SetWindowRgn 这样的序列应该能得到你要的效果。
B Bacchus Unregistered / Unconfirmed GUEST, unregistred user! 2000-11-22 #14 一般来说TWinControl总是矩形的,唯一的解决办法是SetWindowRgn。 BuKuBaKu说得对。 另外可使用CreatePolygonRgn。
F fhb Unregistered / Unconfirmed GUEST, unregistred user! 2000-12-25 #15 看一下TPolyLine控件,他可以满足您的要求。 http://www.truevcl.com
G gcq Unregistered / Unconfirmed GUEST, unregistred user! 2000-12-30 #16 请问,你想在什么区域响应你的事件? 还有,正如BAKUBAKU所说,你即要覆盖别的控件,又要被它覆盖的控件有接受焦点能力, 只能重画区域,或判断鼠标位置,给这个控件发个消息,触发事件!