WideStudio Programming Guide

| WideStudio Programming Guide | WideStudio Index Table of contents

> ## 访问对象

> 在事件过程中访问对象是最基本的功能。不同场合下使用的访问对象的方法如下所示。
> - 通过向事件过程函数传递的参数访问对象
>   访问被粘贴在事件过程中的对象时使用该方法。
> - 通过对象管理访问对象
>   访问未被粘贴在事件过程中的对象时使用该方法。
> - 通过外部变量直接访问对象
>   访问未被粘贴在事件过程中的对象时使用该方法。 使用该方法将会降低事件过程的可移植性。

> ### 通过向事件过程函数传递的参数访问对象

> 通过传递给事件过程函数的参数，可以访问被粘贴在事件过程中的对象。

>     #----------------------------------------------------------
>     #Function for the event procedure
>     #----------------------------------------------------------
>     import mpfc

>     def event_procedure(object):
>       #访问对象
>       object.setProperty("labelString","HELLO WORLD");

>     mpfc.WSGFfunctionRegister("event_procedure",event_procedure)

> object 变量保存客户对象，通过调用客户对象类相应的API操作该对象。

> ### 通过对象管理访问对象

> 通过对象管理可以获得所需的对象。与下文所描述通过外部变量访问对象的方法相比更灵活。

> 对象管理类 | 获取实例函数
> mpfc.WSCbaseList | mpfc.WSCbaseList mpfc.WSGIappObjectList()

> 获取对象的步骤如下所示。

>     #----------------------------------------------------------
>     #Function for the event procedure
>     #----------------------------------------------------------
>     import mpfc

>     def event_procedure(object):

>       # 通过对象管理获得实例(其一)
>       obj = mpfc.WSGIappObjectList().getInstance(
>                    "WSCvlabel",       # 标签类
>                    "newvlab_001");    # 对象名称：newvlab_001

>       # 访问相应的标签对象
>       obj.setProperty("labelString","HELLO WORLD");

>       # 通过对象管理获得实例(其二)
>       obj2 = mpfc.WSGIappObjectList().getInstance(
>                    "WSCbase",      # 不指定特定的类
>                    "newvlab_002"); # 对象名称：newvlab_002

>       # 访问相应的标签对象
>       obj2.setProperty("labelString","HELLO WORLD");

>     mpfc.WSGFfunctionRegister("event_procedure",event_procedure)

> 通过指定类名称和对象名称参数，可以访问所需的obj 或 obj2 对象。 如果将类名称指定为"WSCbase"，将检索所有对象。

> ### 通过外部变量直接访问对象

> 通过声明外部变量，可以实现通过外部变量直接访问对象。 关于外部变量的定义，请参考应用程序生成器用户手册的“外部变量对象”章节。

>     #----------------------------------------------------------
>     #Function for the event procedure
>     #----------------------------------------------------------
>     import mpfc
>     import newwin000

>     def event_procedure(object):
>       # 直接访问 newvlab_001 对象
>       newwin000.newvlab_001.setProperty("labelString","HELLO WORLD");
>     end

Document Release 3.70 for WideStudio ver 3.70, Feb 2004

WideStudio documents index | Table of contents

Copyright(C) T. Hirabayashi, 2000-2004 | Last modified: Feb 25, 2004