1. 1、本文档共39页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
lisp对话框

第一篇 基本知识 第1节 基本知识 对话框是现今最流行的人机互动面接口;在早期的AutoCAD版本中巳经使用,但只有在R12版本开始,才提供给使用者自行编程的对话框开发功能。 对话框的描述定义在一纯文字文件(扩展名为DCL)内,无须特别的开发环境。 定义文件中的对话框描述,均以对话控制语言(Dialog Control Language,简称DCL语言)所建立。 在AutoLISP程序中,配合可编程对话框(Porgrammable Dialog Box,简称PDB)函数,激活及操控对话框。 可以在一个定义档(扩展名DCL)中定义多个对话框。 对话框由方块本身,及包含于其内的组件(或称为控件、构件)所组成。 每个组件的属性定义均包含在一对大括号{ }中。 在定义文件中,各组件及其属性均为小写,只有在赋值给属性,或设定对话框名称时才可使用大写字母。 属性以等号=赋值,并以分号;结束(注意:在AutoLISP程序中,分号是作为批注)。 一般要在组件名称前加上一个冒号:,但若组件并不设定属性,则不需要在组件名称前加冒号,但却要以分号结束。 空行会被忽略。 若定义档发生严重的错误,会在当前的目录下,产生ACAD.DCE文件,以指明所发生的错误。 第2节 定义档 BASE.DCL 预设在SUPPORT的目录中,它包含了各组件的原型定义及各类型巳定义的其它基本组件。而所有自行开发的对话框定义文件,都可以使用在BASE.DCL定义文件中的各个组件。 ACAD.DCL 预设在SUPPORT的目录中,它包含了AutoCAD中所有标准对话框的定义 参考定义档 可在自行开发的对话框定义文件中,经由include指令,取得指定DCL文件中所定义的组件,其语法如下: @include 对话框定义档 例如 @include david.dcl 定义档名称要包含在双引号中,可以在档名前加上指定的目录路径。 先在当前的目录中搜寻该定义文件,然后是定义文件所在的目录,若指定档案的路径,则只会在指定的目录内寻找。 不可以参考ACAD.DCL所定义的对话框,即不可以使用@include acad.dcl 预视对话框 若在Visual LISP中开启一对话框定义文件,即可使用: 工具 -- 接口工具 -- 预览编辑器DCL 在下拉式列示框中,选取该定义文件中所设定的对话框名称,即可预视对话框 亦可直接输入该对话框的名称(要注意大小写) 第3节 批注 // 表示其右边(至该行末端)的文字被视为注释。 /* */ 包括在两个批注符号中间的所有文字(可跨越多行)均视为注释。 语义检核 提供4个等级的检核,该些检核会在对话框载入时完成。可以将下列语句放在定义文件中的任何位置,但不能在任何对话框的属性定义内。 dcl_settings : default_dcl_settings {audit_level = 3;} 等级0 不检查:只有在该定义档巳被检核,且不再作修改时使用。 等级1 错误:找出可能造成AutoCAD终止的错误,此等级为默认值。 等级2 警告:找出配置或行为模式的错误,所有定义在修改后,最少应执行此等级的检查一次。 等级3 提示:找出多余的属性定义。 对话框的设计 美观性 颜色配比,组件整齐排列等。 方便性 相同功能的项目要编排在一起,或使用线框包围。 使用频繁的项目应设置在最显眼及方便的位置。 适当设置快速键及默认值(缺省值)。 除非对话框中的项目过多,否则应避免使用巢状(嵌套)式对话框。 互锁或互换 项目选取(或不选取)时,是否会导致其它项目功能的改变(enable或disable...等) 第4节 对话框定义文件的内容模式 对话框名称:dialog { label=对话框标题 ; :组件名称 { 属性名称=属性值; } //组件定义结束 } //对话框结束 定义说明: 1 对话框名称就是由AutoLISP程序启动对话框时所呼叫的名称。可以自行设定,要区分大小写字母。dialog为对话框中最外层的组件(即整个对话框),其它的组件均包含在其中。一般组件要以冒号:开始,并为小写字母,因为不是属性,所以不须使用分号;结束。 2 开大括号{紧随组件名称之后,以包含该组件的属性或其它组件。label为属性名称,并以等号=赋以其右边的属性值,最后以分号;结束该行叙述。 3 包含在对话框中的其它组件。 组件要以冒号:开始,并为小写字母,因为不是属性,所以不须使用分号;结束。 4 开大括号{紧随组件名称之后

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档