Authorware动态按钮与菜单应用实例(上)

2005-08-16 22:50:54  作者:  来源:互联网  文字大小:】【】【
 

  动态改变按钮的标签、菜单项的文字等功能,在先前版本的Authorware中都是通过间接方法实现的,Authorware 6.5开始直接支持变量作为按钮标签,菜单项文字,甚至是键盘输入及文本输入响应,这个功能改进极大方便了某些应用场合,例如实现双语言选择的多媒体作品等等。

  简单的中英文切换界面

  我们通过一个简单的实例--"简单的中英文切换界面"来认识Authorware 6.5的这一新改进功能。在演示范例中,将用变量来实现动态的切换中英文语言界面。

  1、新建一个"VarButton.a6p",如图1所示建立"EntoCHN"、"DisplayLanguage"两个自定义变量,其中"EntoCHN"为按钮标签变量,默认值为字符串"Chinese","DisplayLanguage"为控制语言显示的条件变量,条件值为"1"显示英文界面,条件值为"2"则显示中文界面,默认值为"1"显示英文界面。

1
  图 1 建立自定义变量

  2、参数初始化

  添加一个计算图标"Initialize"到流程线上,写入以下代码:
  SetWindowText(WindowHandle,"Example of Authorware 6.5")
  Initialize(EntoCHN)
  Initialize(DisplayLanguage)
  其中SetWindowText为Winapi.u32的一个封装函数,功能是设置窗体的标题栏文字。

  3、添加中英文对译文字内容

  拖放一个决策图标到流程线上并命名为"2Language",打开决策图标的属性设置对话框(快捷方式:按住Ctrl键,同时双击选择该决策图标,将出现如图2所示的属性对话框),选择Repeat项为"Don't Repeat",Branch项为"To Calculated Path",计算条件框填入变量DisplayLanguage 。
  继续在决策图标右边添加两个两个显示图标"English"和"Chinese",分别用文本工具输入两段对译的文字(如图3)。同时选择它们的决策路径属性的Erase Contents项为"Don't Erase"。

2
  图2决策图标的属性设置

3
  图3 中英文对译文字内容

  4、设计动态中英文界面切换交互

  添加一交互图标"Change"到流程线上,继续添加一计算图标"ChangeLanguage"到其右边并选择为Button按钮响应交互,打开按钮响应交互的Button属性,设置按钮的标签(Label)为自定义变量:EntoCHN(如图4)

  打开计算图标"ChangeLanguage"输入以下控制脚本代码:

  if  DisplayLanguage=1 then
  SetWindowText(WindowHandle,"实例剖析Authorware 6.5")
  EntoCHN:="英  语"
  EraseIcon(/mailto:IconID@"English")
  DisplayIcon(/mailto:IconID@"Chinese")
  DisplayLanguage:=2
  else
  SetWindowText(WindowHandle,"Example of Authorware 6.5")
  EntoCHN:="Chinese"
  EraseIcon(/mailto:IconID@"Chinese")
  DisplayIcon(/mailto:IconID@"English")
  DisplayLanguage:=1
  end if

4
  图4 设置按钮标签为变量EntoCHN

  5、存盘,最后完成的流程图如图5所示,执行效果如图6所示。

5
  图5 完整程序流程图

6
  图6简单的中英文切换界面 执行效果


相关文章