- 1、本文档共86页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第13章图形用户界面设计
表13.5 QuickWin定义的关于菜单(项)的回调函数 回调函数名 说 明 WINPRINT 打印程序 WINSAVE 保存程序 WINEXIT 中止程序 WINSELTEXT 从当前窗口选择文本 WINSELGRAPH 从当前窗口选择图形 WINSELALL 选择当前窗口的全部 WINCOPY 将选中的文本和图像复制到剪切板 WINPASTE 将剪切板上文本粘贴到正执行READ语句并有焦点的窗口 WINCLEARPASTE 清空粘贴缓冲区 WINSIZETOFIT 改变输出大小以适应窗体 WINFULLSCREEN 在全屏模式下显示输出 WINSTATE 在中止/恢复文本的输出之间转换 WINCASCADE 层叠子窗体 WINTILE 平铺子窗体 WINARRANGE 排列图标 WINSTATUS 启用状态条 WININDEX 显示QuickWin帮助索引 WINUSING 显示怎样使用帮助信息 WINABOUT 显示当前QuickWin应用程序的ABOUT对话框 NUL 无回调函数 ③ 更改菜单项 MODIFYMENUSTRINGQQ函数可以改变菜单项的标题,MODIFYMENUROUTINEQQ函数可以改变菜单项被选中时调用的回调函数,MODIFYMENUFLAGSQQ函数可以改变菜单项的状态(如选中、禁止、启用、变灰)。例如,下列代码: STATUS=MODIFYMENUSTRINGQQ(1,4,’TILE WINDOWS’C) STATUS=MODIFYMENUROUTINEQQ(1,4,WINTILE) STATUS=MODIFYMENUFLAGSQQ(1,4,$MENUCHECKED) 分别将第一个菜单的第四个菜单项的标题改为TILE WINDOWS、将调用的回调函数改为WINTILE、在菜单项中放置复选标记。 ④ 在菜单中创建所有子窗口的列表 在默认的情况下,在QuickWin应用程序的Window菜单中包含当前所有打开的子窗口的列表。通过函数SETWINDOWMENUQQ可使打开的子窗口在指定的菜单中列出。例如 USE MSFLIB LOGICAL(4) STATUS STATUS=SETWINDOWMENUQQ(1) 将打开的子窗口列表放在1号菜单(默认的FILE菜单) ⑤ 模拟菜单选择 函数CLICKMENUQQ可模拟单击或选中Window菜单的一个菜单项动作,执行此函数与真实地单击或选中菜单项完全一致。例如,下面的代码模拟了从Window菜单中选中TILE菜单项时的动作: USE MSFLIB INTEGER(4) STATUS STATUS=CLICKMENUQQ(QWIN$TILE) 函数CLICKMENUQQ的可选参数为符号常量,它们如表12.6所示。 表13.6 代表Window菜单中菜单项的符号常量 符号常量 Window菜单中的菜单项 QWIN$STATUS STATUS BAR菜单项 QWIN$TILE TILE菜单项 QWIN$CASCADE CASCADE菜单项 QWIN$ARRANGE ARRANGE ICONS菜单项 2. 改变状态消息 QuickWin程序显示的任何字符串都可以通过适当的消息类型调用SETMESSAGEQQ过程而加以改变,因此,适用于在不同国家和地区的语言之间的转化。例如 USE MSFLIB CALL SETMESSAGEQQ(‘I am waiting !’,QWIN$MSG_PAUSED) 将PAUSED的状态消息改为I am waiting !。 可供改变的消息类型如表13.7所示。 3. 显示消息框 MESSAGEBOXQQ函数可中断程序并显示一个消息对话框。消息对话框上所显示的消息和标题栏里的标题均可由传入的参数加以控制,且都应为C字符串。代表消息对话框类型的符号常量也可选择,其类型在MSFLIB.mod中定义,并可通过内在函数IOR或操作符.OR.将符号常量结合起来形成特定的类型。例如,下面的代码: USE MSFLIB INTEGER(4) RESPONSE RESPONSE=MESSAGEBOXQQ(‘Retry or Cancel ?’C, ’Smith Chart Simulator’C, MB$RETRYCANCELQWIN.OR.MB$DEFBUTTON2) 表13.7 可供改变的消息类型 消息类型 消 息 QWIN$MSG_TERM Progra
文档评论(0)