对话框的设计与制作

上传人:宝路 文档编号:47770777 上传时间:2018-07-04 格式:PPT 页数:28 大小:1.38MB
返回 下载 相关 举报
对话框的设计与制作_第1页
第1页 / 共28页
对话框的设计与制作_第2页
第2页 / 共28页
对话框的设计与制作_第3页
第3页 / 共28页
对话框的设计与制作_第4页
第4页 / 共28页
对话框的设计与制作_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《对话框的设计与制作》由会员分享,可在线阅读,更多相关《对话框的设计与制作(28页珍藏版)》请在金锄头文库上搜索。

1、 2/23*7.1 概述7.2 对话对话 框管理程序设计设计 7.3 对话对话 框应应用举举例 3/23* 7.1 概述对话框(DialogBox)是一种边界固定的窗口,也是一 种人机交互的主要界面。它具有良好的视觉效果,操作 方便、直观,输入数据与顺序无关。所以当今的几乎所 有软件都要用到对话框与用户交流。在Windows环境下对AutoCAD进行开发时,可以采 用两种方式使用对话框技术:一种是利用 Windows的 对话框设计技术;另一种是使用系统提供的可编程对 话框(Pragram Dialog Box,简称PDB)技术。4/23*7.1.1 对话对话 框的组组成对话框是一个弹出式窗口,

2、它与用户进行信息通信 ,一般被用于一项特定的与输入有关的任务。对话 框是由一个或若干个不同功能的小框组成,这些小框 被称为对话 框的控件。对话框是一个弹出式窗口, 它的控件包含在这个弹出窗口内,提供多种方式实 现用户各种数据的交互输入,如图7-1所示。 AutoCAD的PDB设置预定义的控件有按钮、复选框 、图象、弹出式列表、文本和编辑框等。5/23*弹出列表框 图像编辑 框编辑 框按钮单选 按钮图7-1 对话框的组成为了使对话框布局合理和操作界面良好,AutoCAD允许 用户把这些控件进行分组,组成一行或一列,并用在其外 面加上框线或不加框线的方法组成更为复杂的控件组,以 完成一项复杂的任务

3、,例如列、行、加框列和加框行等。 控件和控件组在对话框中的布局与功能,由控件的属性来 定义。 6/23*用户利用对话框中的控件输入文本、选择一些项 以及指定某一特定的命令动作等。对话框中的编辑框 是一个用户可以在其中输入和编辑文本的子窗口,一 般用于输入文件名、点的坐标、距离和长度等数据。列表框用于为用户显示各种选择,用户可以在列 表框中选择一个或多个项。例如,在图7-2所示的文 件打开对话框中使用列表框显示某个目录下的所有 文件名,用户可以从列表中选择一个文件名。图7-2 打开文件对话框7/23* 7.1.2 对话对话 框的设计环设计环 境与步骤骤1 对话对话 框的设计环设计环 境在Auto

4、CAD的SUPPORT目录中包含有BASE.DCL和 ACAD.DCL两个文件。在文件BASE.DCL中,对基本控 件及控件类型进行了预定义,它还包含了常用控件原型 的定义,PDB不允许用户重新定义预定义的控件。因此 ,用户永远也不要修改BASE.DCL,否则将会出错,使 标准AutoCAD对话框以及自己的应用程序或其它应用程 序的对话框均不能显示。在文件ACAD.DCL中,包含所 有由AutoCAD使用的标准对话框定义。若用户需要对 标准对话框的显示方式进行定制,就可以修改该文件, 但不能通过修改ACAD.DCL来改变其功能。8/23*2 对话对话 框的设计设计 步骤骤 设计对话 框的一般步

5、骤是:(1) 确定应用程序需要输入的数据及其类型。(2) 分析需要输入的每一项数据,确定每一项数据和 使用 控件的类型,这一步需要用户根据输入数据的类型 和各种 控件的功能来决定。 (3) 根据控件主次关系和美学观点进行对话框的布局 设计 。(4) 依据对话框的布局设计编 写DCL文件。(5) 编写应用程序处理对话框。编写应用程序可使用 AutoLISP,也可用Visual LISP或ARX等。9/23* 7.1.3 对话对话 框的控件及其属性1 对话对话 框控件的种类类对话框控件是对话框的基本组成部分,是输 入数据的一种控制形式。AutoCAD系统的PDB 预先定义了一些控件,这些控件依据功

6、能可以分 为六类:可操作控件、装饰和信息控件、控件组 、文本组控件、对话框退出按钮和错误信息控 件,如图7-3所示。图7-3 对话框部分控件的外观10/23*在AutocAD的子目录SUPPORT中有一个名为 BASE.DCL的文本文件。该文件已预定义了全部控件 。通过将各控件组合成行或列,可以建立更为复杂 的控件组。这种控件组可以加框,也可以不加框,而 且在DCL文件中可以作为单个控件来调用。但是,用 户选择时 ,不能选择控件组,只能选择其中的一个 控件。11/23*2 对话对话 框控件的属性控件的属性用于定义它的布局、功能、操作特 性和显示特性,类似于编程语言中的变量。属性由 属性名和属性

7、值组成,属性值必须是以下几种特定 的类型之一: 数值 包括整数和实数。表示距离、大小和长度 的属性,其值通常用整数表示。 保留字 保留字是由字母、数字和字符组成的标 识符,它必须以字母开头。保留字的大小写是有区别 的,如False和false是不同的。12/23* 字符串 字符串是用双引号引起来的文本内容。若 字符串中还要包含一个双引号,则在该双引号前必须有 一个反斜杠。为了区分字符串中的特殊字符,DCL文件规定了以 下几个换码符:” 引号 反斜杠 n 换行符 t 水平制表符13/23* 7.2 对话对话 框管理程序设计设计当用户为自己的应用程序建立对话框时,就需要对 拟建立的对话框的各个控件

8、及其布局格式进行定义。对 话框的定义是用对话框控制语言编写文件来定义,该 文件称为DCL文件。DCL文件是按一定的语法规则编 写 的文本文件,扩展名是.DCL,可以用任何文本编辑程序 建立。在系统的支撑目录/SUPPORT/目录下,提供了系 统预定义的DCL 文件BASE.DCL和ACAD.DCL两个样板 文件。用户在编写DCL文件时,可以直接引用 BASE.DCL文件中预定义的控件,也可以通过包含指令 来引用除了BASE.DCL和ACAD.DCL文件之外的其他 DCL文件中定义的控件。14/23*7.2.1 DCL文件的内容结结 构为了更好的调用另一个DCL文件中定义的控件 或子组装,DCL

9、文件中允许包含另一个DCL文件 。因此,DCL文件中通常包含以下三部分内容: 其它DCL 文件的调用。 对话框的定义。 控件原型和子组装的定义。15/23*7.2.2 控件的定义义与调调用1 控件的定义义格式控件名:预定义控件名1:预定义控件名2:.属性名1属性1值;属性名2属性2值;.16/23*其中,控件名只能含字母、数字或下划线,而且 必须以字母打头。预定义控件名至少有一个,新定 义的控件继承所有指定的预定义控件的属性。大括 号中指定的属性名如果与所指定的预定义控件的属 性名相同,则用指定的属性值取代所继承的属性值 ;如果属性名不同,则指定的属性作为新定义控件 的属性补充。当几个预定义控

10、件中包含某些相同的 属性名而其属性值不同时,DCL文件采用“先入为主 ”的方法,即继承最先出现的预定义控件的属性。17/23*2 控件的调调用格式控件的调用往往是嵌套在控件的定义之中, 拟调用的控件名必须是已定义的控件名。调用格 式有以下两种: (1)简单调简单调 用格式这是最简单的调用格式,格式如下:拟调用的控件名; (2)复杂调杂调 用格式 这是一种比较常用的调用格式,其格式如下:拟调用的控件名属性名1=属性1值;属性名2=属性2值;18/23*7.2.3 对话对话 框的设计设计 原则则与布局技巧 1. 对话对话 框布局设计设计 的基本原则则在对话框的布局设计中,建议考虑以下几个方面的内容

11、: 外形美观 操作和控制方 便 功能定义和提示的一致性 控件的互锁功能 良好的容 错能力 文字内容规范 控件编辑的一般要求 缺省值 和助记键 19/23*2. 对话对话 框布局技巧 把对话框中的控件按逻辑相关安排成行或列,形成 控件组,为用户提供方便。 键盘输 入的数据有自然顺序的应按其自然顺序排列 ,例如三维坐标按X、Y、Z排列。 把对话框中的输入操作,例如编辑框、列表框等, 按水平或者垂直排列,以便用户用Tab键改变输入的 焦点,使光标沿直线移动。 当对话框中的控件排列有困难时,可通过调整控件 组内控件的布局、调整控件之间的间隙、调整右边或 下边的空隙和调整框中行和列周围的间隙等方式,使

12、对话框的布局更趋于合理。20/23* 7.2.4 对话对话 框程序的结结构 1 对话对话 框应应用程序示例 如图所示的对话框,在该对话 框中只有一个文本和 一个按钮。 编写DCL文件 从图 中可以看出:该对话 框的标题是“对话框示例”,是由对 话框的label属性指定,同时用到了文本控件text和一个 按钮。文本控件用于显示文本信息“矿图系统,欢迎使 用”。21/23* 该对话 框的DCL文件的格式如下: system:dialog label=“对话框示例“;:textlabel=“矿图系统,欢迎使用“; :buttonkey=“accept“;label=“确定“;is_default=t

13、rue;22/23* 编写应用程序 驱动 “system”对话框的LISP程序如下: (defun C:shows( / dcl_i) ;定义命令SHOWS (setq dcl_i (load_dialog“system.dcl“) ;装入DCL文件 (if (not (new_dialog “system“ dcl_i);初始化并显示对话框 (exit) ;若找不到对话框则退出程序 (action_tile “accept” “done_dialog)”) ;将OK按钮和表达式建立关系 (start_dialog) ;启动对话 框并开始对话 (unload_dialog dcl_i) ;卸载

14、DCL文件 ) 23/23*2 对话对话 框函数调调用顺顺序 调用(load_dialog)函数加载DCL文件。 调用(new_dialog)函数,在AutoCAD的图形屏幕上 显 示指定的对话框。 通过专用函数对必要的控件进行初始化。 调用(start_dialog)函数将控制权交给对话 框,使 用户 进行交互操作。 处理用户的输入、参数保存等。 退出对话框操作,将控制权重新交给应用程序。从上述示例可以总结出调用对话框处理函数的一般步骤 :24/23* 7.3 对话对话 框应应用举举例7.3.1 对话对话 框格式文件的设计设计在设置绘图环 境模块中,用户需要确定图纸 的幅面大小尺寸,绘图比例和标题栏 式样等参数 ,而这些需要通过对话 框的形式提请用户输入或 选定。根据输入的数据主要分为两类,一类是确定 图纸的结构参数,另一类是标题栏 中填写的数据 ,因此,采用两个对话框即初始化设置对话框和 标题栏输 入对话框管理数据的输入。25/23*7.3.2 应应用程序模块设计块设计 和运行操作当用户把对话框定义文件和LISP程序模块编辑 成文件后,假若LISP文件的名称为“SZTF.LSP”。 在AutoCAD系统的环境下,把“SZTF.LSP”程序装 入。然后在命令行下输入SZTF关

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 教学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号