int li_i
//父容器resize子容器,在当前容器的resize事件里自动调用自己的of_align来align自身的子对象或子容器.
//初始化变量
ui_clienty=0
ui_clientx=0
ui_clientwidth=newwidth
ui_clientheight=newheight
//对齐方式'al_None','al_Top','al_Bottom','al_Left','al_Right','al_Client'
//加入对齐方式为'al_Top'的组件
for li_i=1 to upperbound(uostri_exe_property)
if Lower(uostri_exe_property[li_i].childobject_align)='al_top' then
//重置子对象的位置和大小
uostri_exe_property[li_i].childobject.x=0
uostri_exe_property[li_i].childobject.y=ui_clienty
uostri_exe_property[li_i].childobject.width=newwidth
//重置Client属性
ui_clienty=ui_clienty+uostri_exe_property[li_i].childobject.height
ui_clientheight=ui_clientheight - uostri_exe_property[li_i].childobject.height
end if
next
//加入对齐方式为'al_Bottom'的组件
for li_i=1 to upperbound(uostri_exe_property)
if Lower( uostri_exe_property[li_i].childobject_align)='al_bottom' then
//重置子对象的位置和大小
uostri_exe_property[li_i].childobject.x=0
uostri_exe_property[li_i].childobject.y=ui_clienty+(ui_clientheight - uostri_exe_property[li_i].childobject.height)
uostri_exe_property[li_i].childobject.width=newwidth
//重置Client属性
ui_clientheight=ui_clientheight - uostri_exe_property[li_i].childobject.height
end if
next
//加入对齐方式为'al_Left'的组件
for li_i=1 to upperbound(uostri_exe_property)
if Lower(uostri_exe_property[li_i].childobject_align)='al_left' then
//重置子对象的位置和大小
uostri_exe_property[li_i].childobject.x=ui_clientx
uostri_exe_property[li_i].childobject.y=ui_clienty
uostri_exe_property[li_i].childobject.height=ui_clientheight
//重置Client属性
ui_clientx=ui_clientx+uostri_exe_property[li_i].childobject.width
ui_clientwidth=ui_clientwidth - uostri_exe_property[li_i].childobject.width
end if
next
//加入对齐方式为'al_Right'的组件
for li_i=1 to upperbound(uostri_exe_property)
if Lower(uostri_exe_property[li_i].childobject_align)='al_right' then
//重置子对象的位置和大小
uostri_exe_property[li_i].childobject.x=ui_clientx+(ui_clientwidth - uostri_exe_property[li_i].childobject.width)
uostri_exe_property[li_i].childobject.y=ui_clienty
uostri_exe_property[li_i].childobject.height=ui_clientheight
//重置Client属性
ui_clientwidth=ui_clientwidth - uostri_exe_property[li_i].childobject.width
end if
next
//加入对齐方式为'al_Client'的组件
for li_i=1 to upperbound(uostri_exe_property)
if Lower(uostri_exe_property[li_i].childobject_align)='al_client' then
//重置子对象的位置和大小
uostri_exe_property[li_i].childobject.x=ui_clientx
uostri_exe_property[li_i].childobject.y=ui_clienty
uostri_exe_property[li_i].childobject.height=ui_clientheight
uostri_exe_property[li_i].childobject.width=ui_clientwidth
end if
next
return 0
|