2016-12-12 11 views
0

Calling the function with the window w_test_1PowerBuilderは - 呼び出された関数からウィンドウ制御Obejctを更新

The code for the function wf_access_test

こんにちは

これがうまくいけば、より複雑なアプリケーションのための私の問題を説明するための簡単な例です。

しかし、私は多くの異なるウィンドウからこの関数を呼び出しています。だから、私はハードコードではなく、特定のウィンドウに変数を組み込むことを考えました。

残念ながら、この画像からわかるように、powerbuilderはそれを好きではありません!

私は明らかに何か間違っていますが、私が気づいているすべての道を使い果たしました。

私はPowerbuilderを使用するのが比較的新しいので、マニュアルにはこの例がないようです。これは私には奇妙に見えます。

馬鹿ガイドの回答が最も高く評価されます。

多くの感謝の意を表します。

答えて

0

申し訳ありませんが、これを試してみてください。

Long i 
StaticText lo_st 

For i = 1 to UpperBound(iw_Window.Control[]) 
    If Typeof(iw_Window.Control[i]) = statictext! Then 

     lo_st = iw_Window.Control[i] 
     lo_st.text = iw_Window.ClassName() 

    End If 

Next 

Return 0 
+0

こんにちはエドゥアルドを、はい作業しているあなたに感謝!残念ながら、私は単純な例を挙げようとすると、誤って元の問題をかわす可能性があると私は思う。関数からのウィンドウインスタンス変数のアドレッシング/更新。 w_test_1にインスタンス変数を作成しましたstring is_text1 w_test_1.is_text1 = "This Works"しかし、iw_window.is_text1 = "その他のテキスト"はありません!これは私の脳が私に理解させないものです。私はこれがはっきりしていることを望む? (申し訳ありません!) – Mike

+1

windowobjectクラスにはテキストプロパティがありません。 オブジェクトのクラス名を確認し、そのプロパティを持つ適切なサブクラス へのポインタを再作成する必要があります。 –

+0

私は原理的には同意しますが、ウィンドウ名が関数内でハードコードされているのにiw_window(変数)が使用されている場合にはなぜ動作しますか? – Mike

関連する問題