0

窓がありw_1ますP1.pbl

に視覚的でないオブジェクトn1がありp2.pblます。

w_1持つことでil_ref。n_1 オブジェクトへの値にアクセスしたいと思います。

4

1 に答える 1

1

タスクを達成するにはさまざまな方法があります。

ウィンドウ w_1 で型 n1 のインスタンス変数を定義できます。

n1 i_n1

次に、create ステートメントを使用して変数をインスタンス化します。

i_n1 = CREATE n1 

(オブジェクトが自動インスタンス化されていない場合)

i_n1 内のメソッドと変数は、そのスコープが PUBLIC に指定されている限り、ウィンドウに対して評価できるようになりました (逆も同様です)。

ウィンドウメソッドから非ビジュアルで変数を参照する例:

IF IsValid(i_n1) THEN
  IF i_n1.il_ref > 0... //do whatever
END IF

非ビジュアルがすでにグローバルとして作成されている場合は、ウィンドウにコピーを作成せず、上記のコードをグローバルを参照するように変更してください。

一般に、.PBL ファイル内のクラスにアクセスするには、そのファイルがアプリケーションのライブラリ リストに含まれている必要があります。PowerBuilder のより新しいバージョンでは、これはターゲット (.PBT) で維持されます。ライブラリ リストをプログラムで変更する方法はありますが、ここでは説明しません。

于 2017-01-05T14:57:30.893 に答える