CAD二次开发电子教案 第12篇.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3. (getfiled 对话框标签 路径 文件扩展名 标志 0)) 显示选择文件的对话框,返回包括驱动器路径的文件全名。如果路径为空的字符串,则表示当前路径,如果文件扩展名为空的字符串,则表示所有类型的文件,如果文件扩展名为dwg,则对话框上显示预览的图像。标志为按位编码的整数,控制对话框的行为。如果一次设置多个条件,可将几个位值加在一起合成一个0到15之间的标志数值。标志的含义如下: 1(位0):如果该位为0,应该选择一个已存在的文件;如果该位为1,应该输入新文件的名称。 4(位 2):如果该位为0,该函数只接受指定的扩展名;如果该位为1,允许输入任意的文件扩展名。 8(位3):如果该位为0,该函数返回包括据经在内的文件全名;如果该位为1而位0没有设置,该函数将在库搜索路径内搜索输入的文件名,如果在库搜索路径下发现了该文件,它将截去路径部分而仅返回文件名,如果在另一个路径下也发现了同名的文件,将保留路径部分。 16(位4):如果该位为1,或路径以分隔符结束,则该参数仅被解释为路径名。 32(位5):如果该位为1,且位0也为1,则用户覆盖现有文件时,不会出现警告信息。 64(位6):如果该位为1,即使指定了URL,也不传输远程文件。 128(位7):如果该位为1,不允许 URL。 例如,以下表达式将弹出图12-33所示的对话框。假定test是输入的新文件名,则将返回d:\\example\\lisp\\test.lsp,并将其赋给变量a。 (setq a(getfiled LISP程序实例 d:\\example\\lisp\\ lsp 1)) 图12-33输入新的文件名对话框 4. (help [帮助文件 [主题 [command]]]) 调用帮助工具。参数helpfile指定帮助文件的字符串。如果帮助文件为空字符串,将使用默认的AutoCAD帮助文件。command为需要帮助的项目。如果主题是空字符串,帮助工具将显示帮助文件的绪论部分。主题可以为下列预定义值之一: HELP_CONTENTS 显示帮助文件的第一个主题。 HELP_HELPONHELP 显示如何使用帮助的帮助。 HELP_PARTIALKEY 显示搜索对话框,将传送的字符串作为初始搜索文本 如果调用成功则返回helpfile字符串,否则返回nil。如果不带参数调用help,则在成功时返回空字符串,不成功时返回 nil。 例如,下列表达式调用help函数显示circle 命令的帮助信息,见图12-34。 (help circle) 图12-34 调用help函数显示circle 命令的帮助信息 12.6.4 编写对话框回调函数的注意事项 回调(callback)是指选择了具有活动(action)属性控件时引发的活动。可以是普通LISP表达式、函数,也可以是获取、设置其它控件属性的表达式或函数。 1. 获取控件的数据 有时需要首先判断控件的当前状态和用户的操作,然后再确定相应的动作。可以通过以下六个变量来获取被选控件的的当前值、当前状态或施加在该控件上的当前操作。 (1) $key:被选中控件的关键字。 (2) $value:被选中控件的当前值。 (3) $data:在new_dialog之后,通过client_data_tile函数设置的应用程序管理数据。 (4) $reason:指明用户操作的细节,常用于处理编辑框、列表框、图像和滑动条。对于不同的控件,其值也有不同的含义。该变量的具体含义如下: 1:用户选中了该控件。 2:用户退出编辑框(聚焦在其它的控件上),但尚未作最后决定。 3:用户已改变滑动条的值,但尚未作最后决定。 4:用户在列表框、图像按钮上连击,连击的意义由用户设定。 (5) $x:返回鼠标单击在图像上的x坐标值(像素)。 (6) $y:返回鼠标单击在图像上的y坐标值(像素)。 例如: (action_tile edit1 (setq v1 $value));定义关键字为edit1控件的活动,活动的内容是将该(edit1)控件的当前值赋给变量v1。 (action_tile $key (setq v2 $value));定义该控件的活动,活动的内容是将该控件的当前值赋给变量v2。 (action_tile edit2 (setq v3 $reason));定义关键字为edit2控件的活动,活动的内容是将该(edit2)控件操作细节的代码赋给变量v3。 (action_tile img_button (setq x1 $x y1 $y));定义关键字为img_button的图像按钮的的活动,活动的内容是将单击该按钮时,单击点的X坐标赋给变量x1, Y坐标赋给变量y1。 2.

文档评论(0)

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

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

1亿VIP精品文档

相关文档