0

VFP9には、THISイベントコードまたはクラス定義で現在のオブジェクトへの参照を提供するオブジェクト参照があります。vb.netにはありますMEが、私が観察したように、オブジェクト自体ではなく実際のフォームを参照していました。

button1クリックのVFPコード:

this.caption = "CLICKED" <<OR>> thisform.button1.caption = "CLICKED"

VBコード

-----------------------  <<OR>> Me.button1.text="CLICKED"

現在のオブジェクトへの参照であるvb.netで同等の点線を知りたいです。VFP9システムがあり、vb.netに変換しようとしています。

4

1 に答える 1

0

VFP は、コントロールのネストされたオブジェクト参照に基づいて機能し、"this" によって相対参照が可能になります。VFP に相当するものをロングハンドにしたい場合は、次のようになります。

Thisform.button1.Caption = "CLICKED"

そうは言っても、変換の下流で次のような他のコントロールに遭遇するかもしれません...

this.Parent.otherControl.something...

「.Parent」は、現在のオブジェクトの親コントロールを参照するだけです。それで、ページフレームを持つフォームがあるとしましょう... その上に 3 ページあります。ページ 1 にはコンテナーがあります。そのコンテナにはテキストボックスとボタンがあります。

ボタンのクリックで、テキスト ボックス コントロールに値のメッセージを表示します。ボタンには次のようなものがあります

Messagebox( This.Parent.TheTextBoxControl.Text )

コンテナーがフォームにどの程度埋め込まれているかを知る必要はありません。テキスト ボックスが同じ親コントロールを介してボタンに対して相対的であることを知っているだけです。

于 2013-03-11T15:39:21.207 に答える