情報関連 Property_Setステートメントオブジェクトへの参照を設定
※より実装に近く表示させる為、コードの改行を避けています。スマホ等で閲覧される際は向きを変えてご覧ください。
※実装するバージョンによってはバージョンアップの仕様により動作しないコードもあります。実装には動作確認の上ご使用下さい。
'Property プロシージャの名前、引数、およびプロシージャの本体を構成するコードを宣言します。Property Set プロシージャは、オブジェクトへの参照を設定します。 ' '構文 ' '[Public | Private | Friend] [Static] Property Set name ([arglist,] reference) '[statements] '[Exit Property] '[statements] 'Property Set ステートメントの構文は、次の指定項目から構成されます。 ' '指定項目 'Optional 'Public 'Private 'Friend 'Static 'name 'arglist 'reference 'statements ' '引数 arglist は、次の形式で指定します。 ' '[Optional] [ByVal | ByRef] [ParamArray] varname[( )] [As type] [= defaultvalue] ' '指定項目 'Optional 'ByVal 'ByRef 'ParamArray 'varname 'type 'defaultvalue ' 'メモ Property Set ステートメントを使って定義する各プロシージャには、引数が少なくとも 1 つは必要です。この引数 (引数が 2 つ以上ある場合は一番最後の引数) には、Property Set ステートメントで定義されたプロシージャが呼び出されたときに、そのプロパティに対する実際のオブジェクト参照が設定されます。この引数は、上記の構文の引数 reference として参照されます。この引数にはキーワード Optional を指定できません。 ' '解説 ' 'キーワード Public、Private、または Friend を用いて明示的に指定しない場合、Property プロシージャは、パブリック プロシージャになります。キーワード Static を指定しない場合、ローカル変数の値は、Property プロシージャの実行が終了すると破棄されます。キーワード Friend は、クラス モジュール内でのみ使えます。ただし、Friend を指定したプロシージャは、プロジェクト内のすべてのモジュールのプロシージャから呼び出せます。Friend を指定したプロシージャは、親クラスのタイプ ライブラリには書き込まれません。また、実行時バインディングは行えません ' '実行可能なコードは、すべてプロシージャ内に記述する必要があります。また、Property Set プロシージャは、ほかの Property プロシージャ、Sub プロシージャ、Function プロシージャの中では定義できません。 ' 'Exit Property ステートメントは、Property Set プロシージャを直ちに終了させます。プログラムの実行は、その Property Set プロシージャを呼び出したステートメントの次のステートメントから続行されます。Exit Property ステートメントは、Property Set プロシージャ内の任意の場所に、必要に応じていくつでも記述できます。 ' 'Function プロシージャおよび Property Get プロシージャと同様に、Property Set プロシージャは、引数を受け取り、一連のステートメントを実行して、引数の値を変更できる独立したプロシージャです。ただし、値を返す Function プロシージャまたは Property Get プロシージャとは異なり、Property Get プロシージャは値を返さないため、オブジェクトへの参照を代入するステートメント (Set ステートメント) の左辺にしか記述できません。 ' 'Property Set ステートメントの使用例 ' '次の例では、Property Set ステートメントを使って、オブジェクトへの参照を設定する Property プロシージャを宣言します。 ' Pen プロパティに、別のペンのインプリメントを設定します。 Property Set Pen(P As Object) Set CurrentPen = P ' Pen をオブジェクトに代入します。 End Property |