如何为powerbuilder类创建/定义属性?我正在运行PowerBuilder 9并且我一直在使用公共变量之类的属性,但我想知道如何为对象创建/定义PowerBuilder属性。
我的猜测是,在PB 9中,变量/属性的用法和实现非常相似。
答案 0 :(得分:5)
您可以使用未记录的indirect
关键字创建属性。
这是一个article that explains how to use the indirect keyword in PowerBuilder
关于使用未记录的功能的正常警告适用。
答案 1 :(得分:3)
你的意思是属性,例如C#或PHP定义它们,作为accessor/mutator methods的包装器 - 类似这样(在C#中)?
class TimePeriod
{
private double seconds;
public double Hours
{
get { return seconds / 3600; }
set { seconds = value * 3600; }
}
}
编辑:作为pointed out by Hugh Brackett,可以使用未记录的INDIRECT
关键字来完成此操作。
执行此操作的经典(记录)方法是编写单独的访问器和mutator方法。对于上面的示例,您可以编写一些Powerbuilder代码,如下所示:
(或作为来源:
global type uo_timeperiod from nonvisualobject
end type
global uo_timeperiod uo_timeperiod
type variables
private double id_seconds
end variables
forward prototypes
public function double of_get_hours ()
public subroutine of_set_hours (double ad_seconds)
end prototypes
public function double of_get_hours ();
return id_seconds / 3600
end function
public subroutine of_set_hours (double ad_seconds);
id_seconds = ad_seconds * 3600
end subroutine
)