OnCanResize、OnConstrainedResize、OnResize这三个事件在什么情况下会触发(改变控件的大小除外)?这三个事件有什么区别? (1

飞狼

Unregistered / Unconfirmed
GUEST, unregistred user!
OnCanResize、OnConstrainedResize、OnResize这三个事件在什么情况下会触发(改变控件的大小除外)?这三个事件有什么区别? (100分)<br />原来的标题是:在使用ScrollBox时,是否可以使ScrollBox左边一部分不随水平滚动条滚动,但是响应垂直滚动条的移动?
问题已经得到解决,但却是知其然不知其所以然,继续请各位朋友解惑。
 

任我行_zq

Unregistered / Unconfirmed
GUEST, unregistred user!
不太理解题意,但我想设置HorzScrollBar和VertScrollBar的相关属性(比如visible)就可以了。
 
W

wlmmlw

Unregistered / Unconfirmed
GUEST, unregistred user!
回来说清楚点吧。我也看不懂啊。
 

飞狼

Unregistered / Unconfirmed
GUEST, unregistred user!
晕头,呵呵,其实就是类似dbgrid固定左边几列的问题。在scrollbox中,有若干dbchart显示图形,在每个dbchart的左边,都有一个label作为标识,希望label始终固定在左边,不随水平滚动条而移动,但是能够在垂直滚动条的控制下与dbchart同步上下移动。也就是希望水平滚动条只控制dbchart,而垂直滚动条可以同时控制dbchart和label。dbchart中可以设置titles,但是显示的图形会出现边框。
 
L

lixiaoxi

Unregistered / Unconfirmed
GUEST, unregistred user!
在scrollbox的OnConstrainedResize事件中加入:label1.left:=5
哈哈,简单吧。
 
F

fu_qi_ming

Unregistered / Unconfirmed
GUEST, unregistred user!
楼上的模拟出来了.
 

飞狼

Unregistered / Unconfirmed
GUEST, unregistred user!
谢谢lixiaoxi,前两天这个问题我也解决了,我是把作为标识的label都移到scrollbox的外面,然后在scrollbox的OnCanResize事件中调整各label的top。起先我是在form的OnPaint中调整各label的top,但是发现只有在窗口最大最小化的过程中才会起作用,后来尝试着把代码写在scrollbox的OnCanResize事件中,居然可以了。现在我不明白的是,为什么scrollbox的滚动条的滚动会触发OnCanResize事件,按着我原来的理解和delphi的help,只有在改变scrollbox的大小才会触发OnCanResize事件,我现在想问下OnCanResize、OnConstrainedResize、OnResize究竟是什么含义,在什么情况下会触发这三个事件(改变控件的大小除外),以及这三个事件有什么区别。lixiaoxi我分配50分,有谁能具体说明这三个事件,我分配另外的50分,如果一周内没人回答,100分全给lixiaoxi。
 

飞狼

Unregistered / Unconfirmed
GUEST, unregistred user!
多人接受答案了。
 

Similar threads

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