WideStudio Logo
WideStudio
Programming Guide
WideStudio Index
目次


オブジェクトにアクセスするには

イベントプロシージャにおいて、オブジェクトにアクセスすることは、最も 基本的な事柄です。いろいろな場合における、オブジェクトへのアクセス方 法を説明します。

プロシージャ関数に渡される引数によるアクセス

イベントプロシージャに渡される引数を利用すると、イベントプロシージャ が貼られているクライアントオブジェクトにアクセスすることができます。

def event_procedure(object)
  # オブジェクトへアクセス
  object.setProperty("labelString","HELLO WORLD")  
end

object 変数がそのクライアントオブジェクトを格納する変数です。 このオブジェクトに対して操作を行う場合、この object に対して 使用したい API を呼び出します。

オブジェクト管理を利用したアクセス

オブジェクト管理インスタンス(ロードモジュールにつき、一つ存在)に対し て要求すると、アクセスしたいオブジェクトを取得することができます。外 部変数アクセス(下記参照)の場合と異なり、コンパイル時にシンボルのリン クをを伴いません。したがって、画面の構成によらない柔軟なプログラムを 行うことができます。

オブジェクト管理クラス インスタンス取得関数
Mpfc::WSCbaseList Mpfc::WSCbaseList Mpfc::WSGIappObjectList()

アクセスしたいオブジェクトの取得は、次の様に行います。

def event_procedure(object)

  # オブジェクト管理によるインスタンスの取得(その1)
  obj = Mpfc::WSGIappObjectList().getInstance(
               "WSCvlabel",       # ラベルクラス
               "newvlab_001")     # newvlab_001 という名称

  # 得られたラベルに対するアクセス
  obj.setProperty("labelString","HELLO WORLD")  

  # オブジェクト管理によるインスタンスの取得(その2)
  obj2 = Mpfc::WSGIappObjectList().getInstance(
               "WSCbase",      # どのクラスかを特定しない
               "newvlab_002")  # newvlab_002 という名称

  # 得られたラベルに対するアクセス
  obj2.setProperty("labelString","HELLO WORLD")  
end

obj もしくは obj2 がアクセスしたいオブジェクトです。クラス名称とオブ ジェクト名称を引数にします。もしクラス名を特定したくない場合は、 "WSCbase" を与えてください。この場合はすべてのオブジェクトが検索対象 となります。

外部変数による直接アクセス

オブジェクトを外部変数参照定義すると、外部変数としてアクセスできます。 外部変数定義は、アプリケーションビルダユーザーズガイドの [外部変数として可能なオブジェクトとするには]の節を参照下さい。

...
def event_procedure(object)
  # newvlab_001 に対して直接アクセス
  $newvlab_001.setProperty("labelString","HELLO WORLD")  
end


Document Release 3.70 for WideStudio ver 3.70, May 2004


WideStudio documents index | 目次

Copyright(C) WideStudio Development Team, 1999-2004 Last modified: May 25, 2004