- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
19.3 Application服务
Application是应用程序的起点,对于PFC应用程序开发人员来说也应该首先从Application服务开始学起。应用服务是应用程序处理所必须的,它向用户提供了 一种“应用程序对象模型”方式使用继承性的能力。因为在PB中不能继承应用对象,所以应用程序服务就使开发人员能够创建可重用的应用程序过程。 19.3.1 建立Application Manager Application Manager服务是必须在用户应用程序中创建的一个全局变量。在用户的全局变量声明中,必须声明一个引用变量用于指向Application Manager服务。用户可以使用扩展层服务n_cst_appmanager,但是由于用户可能会用应用程序处理来扩展功能,因此应该从n_cst_appmanager来继承自己的Application Manager。当开发人员建立了自己的后代Application Manager(例如名称为n_cst_russ_appmanager)后,就必须声明一个叫做gnv_app的全局引用变量来保存服务实例的地址,就像下面的代码所示: n_cst_russ_appmanager gnv_app 当生成Application Manager引用变量后,必须创建实例并将应用程序对象的事件重定向到Application Manager服务。用户的应用程序的Open事件应用像下面这样编写: gnv_app = Create n_cst_russ_appmanager gnv_app.Event pfc_Open(commandline) 对于用户打算使用的其他每一个事件,都应该将它们重定向到Application Manager(一定要传递事件参数)。由于Open事件创建了Application Manager,因此应用程序对象的Close事件应该取消它。Close事件应该像下面这样编写脚本: gnv_app.Event pfc_Close() Destroy gnv_app 尽管在Application画板中创建Application Manager服务并重定向事件,但是仍然需要调出应用程序对象的属性表。在Variable Types属性页上,将SQLCA数据类型从Transaction改为n_tr,这样就确保了SQLCA是用PFC事务对象创建的。n_tr还提供了几个函数来消除重复性的任务,如联结和断开(of_connect()和of_disconnect())以及事务管理(of_commit()和of_rollback())。除了事务对象外的其他全局变量也可以使用PFC中的相关对象来代替,比如Message可以用PFC中的n_msg来代替。 创建Application Manager后,它就保存了应用程序的全局变量。Application Manager有一些Get和Set函数提供对常用全局数据的访问。如: ????? 应用程序.ini文件名; ????? 用户.ini文件名; ????? 帮助文件名; ????? 应用程序的注册键; ????? 应用程序的MDI框架窗口; ????? 用户的ID; ????? 应用程序标志; ????? 应用程序的版权信息和版本号。 例如,要设置应用程序的版本信息,则可以使用下面的代码: gnv_app.Of_SetCopyRight(PowerBuilder Unleashed 7.0) Application Manager还允许用户实例化两个窗口:w_splash和w_log。这两个窗口一般和应用程序的启动相关联。醒目显示窗口显示了使用用户为应用程序设置的一些全局变量(如版权语句等)。要打开醒目显示窗口,使用函数of_splash()并设置醒目显示窗口持续显示的秒数。 要显示登录窗口并提取用户的ID和口令,只要调用of_LogonDlg()函数即可。该函数执行一系列随打开窗口w_logon而设定的步骤。在打开窗口之前,触发Application Manager的pfc_PreLogonDlg事件,初始化用于在窗口内显示的值,随后显示登录窗口。当单击OK按钮并关闭窗口时,将信息通过pfc_Logon事件发送到Application Manager。事件的参数as_userid和as_password随后就可以用于产生用户的事务对象并联结到数据库。 除了设置全局数据值和生成醒目显示及登录窗口外,Application Manager还允许用户实例化前面提到的服务。 19.3.2 Application Manager服务 表19-6列出了Application Manager服务。 表19-6 应用对象中的服务 服 务 名 称 描 述 Application
文档评论(0)