パワービルダークラスのプロパティを作成/定義するにはどうすればよいですか?私はPowerBuilder 9を実行していますが、のような公開変数を使用していますが、オブジェクトのPowerBuilderプロパティを作成/定義する方法を知りたいと思います。Powerbuilder - クラスプロパティの作成方法
私の推測では、PB 9では変数/プロパティの使用法と実装が非常に似ています。
パワービルダークラスのプロパティを作成/定義するにはどうすればよいですか?私はPowerBuilder 9を実行していますが、のような公開変数を使用していますが、オブジェクトのPowerBuilderプロパティを作成/定義する方法を知りたいと思います。Powerbuilder - クラスプロパティの作成方法
私の推測では、PB 9では変数/プロパティの使用法と実装が非常に似ています。
たとえば、 C#またはPHPはaccessor/mutator methodsのラッパーとしてこれらを定義しています(C#で)?
class TimePeriod
{
private double seconds;
public double Hours
{
get { return seconds/3600; }
set { seconds = value * 3600; }
}
}
EDIT:pointed out by Hugh Brackettように、これは文書化されていないINDIRECT
キーワードを使用して行うことができます。
これを行う古典的な(文書化された)方法は、別個のアクセサメソッドとミューテータメソッドを記述することです。
(またはソースとして:
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
)上記の例では、このようないくつかのPowerBuilderコードを記述します
あなたは文書化されていないindirect
キーワードでプロパティを作成することができます。 ここにありますarticle that explains how to use the indirect keyword in PowerBuilder 文書化されていない機能の使用に関する通常の注意が適用されます。
ありがとう、私は存在することを知らなかった! –
「プロパティ」で探しているものを明確にすることができます。また、「パブリック変数」によってパブリックアクセスのインスタンス変数を意味する場合は、どのようにそれらが不足するのかを明確にすることはできますか?あなたが何をしているのかを理解すれば、助けてくれるはずです。 (少なくとも*私はコンセプトに曖昧です) – Terry