您的位置:首页 >> 数据库 >> 数据库其它 >> 正文
RSS
 

如何让按扭随窗口的大小变换位置

http://www.rdxx.com 06年07月31日 08:25 PB能量建造者 我要投稿

关键词: 位置 , 按扭 , 窗口

本例中共有四个控件,一个窗口控件dw_1和三个按扭cb_1,cb_2,cb_3。

在窗口定义实例变量:
Boolean bFirstTime //是否第一次打开窗口
Integer iOrigWidth,iOrigHeight //窗口原始尺寸
Integer iButtongap //按扭之间的距离
Integer iButton_Bottom,iButton_left,iButton_Dw //

在窗口OPEN事件中:
bFirstTime=true

在窗口RESIZE事件中:
Integer iWindowWidth,iWindowHeight
Integer iWorkWidth,iWorkHeight
Integer iX,iY,iWidth,iHeight

//得到窗口的尺寸
iwindowwidth=this.width
iwindowheight=this.height

//得到工作区的尺寸
iworkwidth=this.workspacewidth()
iworkheight=this.workspaceheight()

if bFirstTime then //第一次修改窗口大小
//保存原始尺寸
iorigwidth=iwindowwidth
iorigheight=iwindowheight
ibuttongap=cb_2.x - (cb_1.x + cb_1.width)
ibutton_bottom=iworkheight - (cb_1.y + cb_1.height)
ibutton_left=cb_1.x
ibutton_dw=cb_1.y - dw_1.height
bFirstTime=false
return
else
//原始窗口不能调得过小,以避免控件重叠
if iwindowwidth$#@60;cb_3.x + cb_3.width + ibutton_left or iwindowheight$#@60;cb_1.height + ibutton_dw +ibutton_bottom + dw_1.y then
this.resize(iorigwidth,iorigheight)
return
end if
end if

//调整按钮位置
ix=ibutton_left
iy=iworkheight - (ibutton_bottom + cb_1.height)
cb_1.move(ix,iy)

ix=ix + cb_1.width + ibuttongap
cb_2.move(ix,iy)

ix=ix + cb_2.width + ibuttongap
cb_3.move(ix,iy)

//调整DW控件大小
iwidth=iworkwidth - 2 * dw_1.x
iheight=cb_1.y -dw_1.y - ibutton_dw
dw_1.resize(iwidth,iheight)


 
 
标签: 位置 , 按扭 , 窗口 打印本文
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站