4gl学习中


第八章 屏幕交互语句

屏幕

用屏幕交互语句之前,必须先定义好 INFORMIX-4GL 的屏幕类型。屏幕是信息显示的终端区域。缺省地, INFORMIX-4GL 的屏幕区域是 24 行 80 列。 INFORMIX-4GL 可以把屏幕分成几个叫作窗口的小区域。

窗口

在 INFORMIX-4GL 中建窗口时,实际是创建了一个小屏幕。它减少了语句显示的区域。如果想在第 16 行显示 MESSAGE 语句,会引起错误,这是因为按 INFORMIX-4GL 的概念,没有第 16 行。任何时候只有一个窗口或屏幕可以成为活动的。被激活的最后一个窗口是当前窗口。

创建窗口的语句在别的章节中介绍。现在要了解的是:

l 创建的窗口数目没有限制。 ( 只会受内存的限制 ) 。

l 任何时候只有一个活动窗口。

l 可以决定按什么尺寸创建窗口。

l 窗口大小会影响其它的 INFORMIX-4GL 语句。

MESSAGE 语句

MESSAGE 语句在消息行显示一个字符串。缺省地,消息行是活动窗口的第二行,但可以通过 OPTION 语句改变。 OPTIONS 语句例如:

消息在使用另一个 MESSAGE 语句前都保留在屏幕上,这意味着消除消息的唯一办法是显示另一个空消息或其它消息。

message “No more rows in that direction”

sleep 3

message “ ”

这个语句在屏幕上显示消息,并等待 3 秒钟再清除消息。这是 MESSAGE 语句最一般的用途。

可以使用 MESSAGE 语句的属性。属性影响 MESSAGE 显示的方式。下面列出了可在 MESSAGE 语句中使用的属性。

REVERSE BOLD BLINK DIM UNDELINE INVISIBLE

在本章的后面讨论。

ERROR 语句

用 ERROR 语句可在 Error 行显示一个字符串。缺省地, Error 行是屏幕的最后一行,但可以通过 OPTIONS 语句改变。 Error 行位置与屏幕有关,与打开的窗口数无关。 ERROR 语句以反显形式显示正文并带有响声。

用户按别的键之前,错误信息一直显示在屏幕上。

可以使用 ERROR 语句的属性。属性会影响 error 显示的效果。下面列出了 ERROR 语句中可用的属性。

REVERSE BOLD

BLINK DIM

UNDELINE INVISIBLE

NORMAL

ERROR 语句与 MESSAGE 语句的比较

ERROR 和 MESSAGE 语句在两方面不同:

l ERROR 语句与屏幕有关, MESSAGE 语句与窗口有关。 ( 记住若没有窗口打开着,屏幕即当前窗口 ) 。

l ERROR 语句总是伴随着响声。

例如,假设缺省的错误信息行 ( 屏幕最后一行 ) 和消息行 ( 屏幕第二行 ) 没有改变,如上图,窗口打开了,遇到了 MESSAGE 语句和 ERROR 语句,注意;消息文本出现在窗口中,而错误信息文本显示在屏幕底部。

DISPLAY 语句

用 DISPLAY 语句可在屏幕的指定位置显示字符串。这与 MESSAGE 语句不同, MESSAGE 语句总从消息行的左边界开始显示,用 DISPLAY 可以通过给定行、列位置,把信息显示在光标的当前位置。

可以使用 DISPLAY 语句的属性。下面列出了 DISPLAY 语句中有效的属性。

REVERSE BOLD

BLINK DIM

UNDERLINE INVISIBLE NORMAL

** 警告

**

若指定了不存在的行、列位置,会导致运行错误。

PROMPT 语句

PROMPT 语句和以前讲到的语句不同。它不只显示一行文本,还要等待用户响应。用户的响应存放在变量中,定义变量的语句在别的模块中。 PROMPT 缺省的显示位置是窗口的第一行。

l CHAR 选项:当 INFORMIX-4GL 语句含有 PROMPT 语句,它会等待用户输入并按 RETURN ,如果使用了 CHAR 选项, PROMPT 语句要求变量定义为单字符,且不等待用户按 RETURN 。

l Help# 选项:可以用 PROMPT 的 Help# 选项。 Help# 可以从用 mkmessage 工具创建的文件中找到编号的信息并在 Help 键按下后显示给用户, mkmessage 工具在别的章节中讲到。

l ON KEY 选项:用于定义列在 _ key-list _ 中的键按下后的动作。 ON KEY 语句的用法在别的的章节中讨论。

PROMPT 可以带属性使用。下面列出了 PROMPT 语句可用的属性。

REVERSE BOLD BLINK DIM

UNDERLINE INVISIBLE NORMAL

OPTIONS 语句

OPTIONS 语句用于定义一些 INFORMIX-4GL 语句的缺省值。如 MESSAGE 、 PROMPT 和 ERROR 语句显示的缺省行位置,都可用 OPTIONS 语句改变。

如上图, FIRST 和 LAST 保留字可用于设置显示 MESSAGE 、 PROMPT 和 ERROR 语句的显示位置。这两个保留字对于显示在活动窗口的 PROMPT 和 MESSAGE 特别有用。例如,用户输入一般在活动窗口的倒数第二行,要想让它与窗口大小无关,可通过如下设置 OPTIONS 语句:

options

prompt line last-1

** 注意

**

在应用中可能有多个 OPTIONS 语句。后面的 OPTIONS 设置若改变了前面的设置,则以后面的设置为准。否则, OPTIONS 设置的值一直起作用。

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus