PowerBuilder是一种面向对象的开发工具,除SystemFunctions类外,所有对象均由祖先类PowerObject继承而 来。PowerObject有九种子类,窗口内所有控件均继承自PowerObject/GraphicObject/WindowObject,该类派 生出两种子类:DrawObject和DragObject。DrawObject类是画图对象,属于该类的控件有:线段、椭圆、矩形和园角矩形,其余控 件均属于DragObject类。
由于DrawObject控件在应用程序中使用得比较少,因此,为了简化程序,本软件仅对DragObject控件进行自动缩放。
- 实现原理
PowerBuilder的窗口对象有一个非常重要的属性-control[]数组,存储了窗口内放置的所有控件。通过这个数组,可以访问各控 件的属性。但窗口的control[]数组并不存储放在Tab控件和UserObject控件内部的控件,它们存储在Tab控件和UserObject控 件各自的control[]数组中。
在窗口的open事件中,通过其control[]数组,找出在窗口内放置的全部DragObject类控件(当遇到Tab控件和 UserObject控件时,继续通过它们各自的control[]数组,找出其内部的全部DragObject类控件),保存所有找到的控件的原始x、 y、width和height属性数据与当前窗口原始宽度和高度的比例值。当窗口大小调整时,在resize事件中,根据保存的各控件的比例值重置控件的 x、y、width和height属性,从而实现控件随窗口大小的变化自动按比例放大或缩小。
系统物件 - NonVisualObject 篇
概述
这个物件在 PowerBuilder 中并不可以直接运用,只是在定义使用者自订物件时配合系统物件架构的物件。看看就好。
继承阶层
PowerObject
属性 ( Property )
属性名称 资料型态 说明 ClassDefinition PowerObject 请参阅 PowerObject。
事件 ( Event )
事件名称 说明 Constructor 当物件建构完成后,第一个执行的事件。 Destructor 当物件解构前,最后一个执行的事件。
函数 ( Function )
函数名称 | 函数回传资料型态 | 说明 |
ClassName | String | 请参阅 PowerObject。 |
GetContextService | Integer | 请参阅 PowerObject。 |
GetParent | PowerObject | 请参阅 PowerObject。 |
PostEvent | Boolean | 请参阅 PowerObject。 |
TriggerEvent | Integer | 请参阅 PowerObject。 |
TypeOf | Object | 请参阅 PowerObject。 |