第4章交互式界面设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第4章交互式界面设计

第四章 交互式界面设计 CICS主要用来开发交互式应用系统。典型的交互就是用户从终端上输入信息,应用程序从终端屏幕上获取相应信息,然后根据用户的请求进行处理,最后将处理的结果送回终端屏幕进行显示。因此交互式系统的关键就是如何从用户终端上获取信息,以及如何将信息发送到用户终端屏幕上指定的位置进行显示。CICS提供了两个基本的API接口命令来完成这二个任务,一个是RECEIVE命令,一个是SEND命令。在第三章我们已经了解这两个命令的基本用法。本章将继续介绍如何用这两个命令进行交互式界面设计。 4.1 终端用户交互 在主机系统上用户要与系统进行交互,必须通过终端界面来实现。在CICS中,怎样才能方便、有效地定义终端界面,以实现与用户的良好的交互性呢?在第三章的例子程序里面我们用到了CICS提供的两个基本的终端输入输出命令: SEND命令 RECEIVE命令 我们回顾一下第三章里这两个命令的使用: EXEC CICS RECEIVE INTO (INAREA) LENGTH (INL) RESP(RCVERR) END-EXEC . EXEC CICS SEND CONTROL CURSOR(1760) END-EXEC EXEC CICS SEND FROM(MSGI) LENGTH(40) END-EXEC 上面三个CICS语句中第一句是使用RECEIVE命令从用户终端获取信息,默认是从终端屏幕左上角开始获取LENGTH所指定的长度的信息,没有提供从终端某行莫列开始直接获取信息的途径,如果需要从终端某行莫列开始直接获取信息的话,最好的办法是将终端上所有信息先接收进来,然后再在程序里编写代码把需要的信息提取出来,非常不方便。因此,RECEIVE命令的这种用法主要适合简单的信息获取,如获取事务提交时带的“命令行参数”。 而第二个和第三个CICS命令则是用来在用户终端制定的位置输出信息。第二句的作用是先将光标定位到1760(即23行第1列)处,接下来第三句则是在光标当前位置,23行第1列,将MSGI的信息显示。我们发现SEND命令不能直接在指定的行列处输出信息,必须先用单独的命令将光标定位到指定行列处,然后再在光标所在的位置进行输出。这同样的非常不方便。 所以如果想用前面SEND和RECEIVE命令的基本用法来做一个交互式菜单程序的话,用于设计输入输出的代码量将很大。而且一旦菜单界面调整,比如增加、减少菜单项,屏幕布局调整等等,这些调整实际应用开发过程中经常要做。而每一次跟界面相关的调整需要修改大量的代码。这就如同DOS年代编写交互式程序一样,程序员大部分精力消耗在界面的设计和调整上了,这样整个应用的开发效率和质量肯定不会太好。出现这种情况的根本原因在于这种开发模式下,界面设计和程序逻辑完全混合在一起。 因此CICS就试图将界面设计和程序逻辑分开,这就是CICS的基本映像支持(Basic Mapping Support)系统的主要任务了。BMS提出了屏幕映像(MAP)的概念,屏幕映像就像一个对象一样,它将用户终端的屏幕进行格式化,描述了屏幕的各种布局,用户可输入的区域,应用程序可输入输出的区域等等与界面相关的内容,这以前需要大量的SEND命令才能完成。同时作为一个对象,它具有很多属性,而这些属性可以在用户的程序里面可以访问,程序员可以通过控制这些属性来控制屏幕映像。 CICS依然用SEND和RECEIVE两个基本命令来完成对屏幕映像的使用,只不过参数有些不同了。主要有SEND MAP和 RECEIVE MAP这两种用法,这两个命令在程序和终端之间进行格式化数据流的传输,以完成对终端界面格式和功能的定义。它们的功能分别是: (1)SEND MAP命令 在应用程序中,通过运用 SEND MAP可将定义好的屏幕映像发送到用户终端上去,而不需要用很多普通SEND命令,先定位光标,然后发送信息的方法。这大大减少了程序员对界面处理的编码量。 (2) RECEIVE MAP 在应用程序中,通过应用 RECEIVE MAP将用户在终端上已格式化了的屏幕上输入的信息接收到应用程序的变量里,然后进行处理。 我们讲解了如何在程序和终端之间进行格式化数据流的传输。那么现在关键是这种格式化的数据流又是如何进行定义的呢?CICS提供了BMS(Basic Mapping Support),通过BMS,就可以在全屏范围内定义数据的格式和功能,以供程序引用和控制。 4.2 MAP及MAPSET概念

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档