我在label的画布上画线条,但当有窗体等从label上移过时,画布中的图像就被擦掉了。(50分)

  • 主题发起人 主题发起人 luoshouhua
  • 开始时间 开始时间
L

luoshouhua

Unregistered / Unconfirmed
GUEST, unregistred user!
我在label的画布上画线条,但当有窗体等从label上移过时,画布中的图像就被擦掉了。这是怎么回事?
 
Tlabel 不是TWinControl类的子类,属于非窗口类控制,没有窗口句柄,而且主要用于显示静态文本的,建议用其他组件
不同的组件的Canvas的特性是不一样的,可以多做做比较
 
使用Lable.Repaint试试
 
用image控件可以。
 
用paintbox吧,这样资源能省点
 
我是在TPanel的Canvas上画图,曾经也出现过楼主的问题,后来我用了canvas.CopyRect这个方法来解决的,效果很好。
 
肯定会被擦掉的 因为它的文字显示是在Label.Parent重画时画在Label.Parent的画布上的 是非持久性的
 
窗体经过label后 label重画了
 
我知道Tlabel重画了,怎样防止呢?他们说可以派生一个类
将paint属性继承下来,应该怎么写?
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部