dcl驱动程序

合集下载

输电塔防坠落装置放输电塔防坠落装置放样与绘样与绘图模块化设计

输电塔防坠落装置放输电塔防坠落装置放样与绘样与绘图模块化设计

输电塔防坠落装置放输电塔防坠落装置放样与绘样与绘图模块化设计摘要:基于AutoCAD2002软件平台,应用AutoLisp编程语言对CAD系统进行二次开发。

本设计完成了输电塔防坠落装置的参数绘图功能模块,实现了自动化绘图的功能。

从而为防坠落装置的放样缩短了工作量,提高了工作效率同时减少了放样差错率。

关键词:AutoCAD;AutoLisp;防坠落装置;参数化绘图随着近几年输电行业的发展,输电塔的设计,放样,加工慢慢趋于人性化和多样化,像呼高比较高的输电角钢塔开始增设塔身爬梯(设护笼),并在一定高度增设休息平台,出于安全考虑,在铁塔脚钉主材线上增设防坠落装置,贯穿整个塔身和横担,而本文分析的就是铁塔的防坠落装置。

现阶段,电力输电塔有角钢塔、钢管塔、钢管杆等等,角钢塔一般可用于10kV~800kV的输电线路工程,钢管塔主要用于500kV输电线路及以上,而钢管杆主要用于110kV输电线路及以下,角钢塔设计在输电线路的比例非常高,而角钢塔又包含有单拼角钢塔、双拼角钢塔、四拼角钢塔,而铁塔防坠落金具从最先的在角钢主材上开孔连接,到现在比较通用的夹板连接,更高形式用在高电压等级的铁塔中的轨道式防坠落装置。

非特高压线路的铁塔一般只用夹板式连接,因轨道式安装困难、且成本较高。

单主材角钢塔的防坠落装置一般用夹板式,竖直方向从下到上安装顺序依次为:联板—U型挂环—液压型耐张线夹—GJ-50钢绞线—UT楔型耐张线夹—联板;水平方向从左到右安装顺序依次为:联板—U型挂环—液压型耐张线夹—GJ-50钢绞线—UT楔型耐张线夹—联板。

我公司从事状坠落装置的生产加工及配套安装,对于这种简易式固定夹板的加工必须先放样取得样板后交给车间加工,而防坠落装置上的其他构件不需要加工,直接外购就可以了。

从上图中可以看出,钢板的放样,除了主材肢宽(用字母K表示)不确定之外,其他都是图纸确定好的,而主材肢宽的大小主要是取决夹板所安装的位置,实际安装过程中,防坠落装置从铁塔底部到顶部全部要安装,主材肢宽K理论上包括所有角钢的肢宽,放样过程中间包含大量的计算,放样繁琐,效率低下,而且容易出错,施工现场售后经常反馈内外夹板孔位有偏差,无法穿插螺栓,导致成品报废处理,必须重新放样加工,再运往施工现场,浪费额外的人力、物力、财力。

2对话框驱动及应用实例

2对话框驱动及应用实例

2)等腰梯形对话框驱动程序(dytx.lsp)
(defun c:tx (/ id)
(setq id (load_dialog "d:\\shili\\dytx"))
(if (< id 0) (exit))
(if (not (new_dialog "dytx" id)) (exit))
(image1 "tx1" "d:\\shili\\dytx")
功能:开始对话框并接受用户输入。在调用 该函数之前,你必须通过(new_dialog)函数来 初始化。同时这个对话框必须在一个动作表 达式或一个返回函数调用(done_dialog)函数之 前,一直保持激活状态。
17) start_image函数
格式:(start_image 控件操作名)
功能:在图像控件中开始建立图像。应当与 函数(end_image)成对使用,在这两个函数之 间可以调用(fill_image), (slide_image)和 (vector_image)等函数建立图像。
(done_dialog)") (start_dialog) (unload_dialog id) (if (> what 0) (draw_zdbx n r flag)) );end
带圆正多边形绘图及数据读取函数
(defun draw_zdbx (n r flag)
(setq bp (getpoint "\nBase point:"))
} ok_cancel; }
2) 对话框驱动程序设计(htf.lsp)
例2、 带圆正多边形对话框驱动
1) 对话框设计程序(zdbx.dcl)

ObjectARX开发环境下的AutoCAD对话框设计

ObjectARX开发环境下的AutoCAD对话框设计
ObjectARX开发环境下的AutoCAD对话框设计
袁梅李亚萍张竟
(武汉大学城市建设学院,湖北 武汉 430072)
摘要:在ObjectARX开发环境下,AutoCAD支持两种格式的对话框:PDB对话框和Windows机制的对话框。从简单实例出发,本文介绍了这两种格式的对话框设计。
关键词:ObjectARX;AutoCAD;PDB;MFC;对话框
}
以上只给出了主调用函数drive_main()和回调函数print_cb()、ok_cb()的部分代码,相当于ObjectARX应用程序中的用户程序主体函数部分,Mypdb.cpp中头文件部分、函数声明部分和接口函数部分和一般的ObjectARX应用程序要求相同,不再写出。必须注意,头文件中一定要有#include“adsdlg.h”。
Microsoft基础类库(MFC)给软件开发者提供了一种便捷快速建立标准的用户界面的方法。ObjectARX开发环境也提供了一系列基于MFC的用户界面类,我们可以使用这些类设计Windows风格的对话框。使用Windows对话框的ObjectARX应用程序将使自己的界面与AutoCAD内建对话框界面完全一致,且可与其它Windows应用程序紧密集成在一起,共享Windows的各种资源,而且程序的维护也非常方便。在ObjectARX应用程序中使用MFC最明显的优点是可以充分利用MSVC(Microsoft Visual C++)开发环境提供的先进技术和工具,实现程序界面的可视化设计。Windows对话框也是Autodesk极力推荐开发者使用的对话框。
在CAD软件开发中,对话框的设计是软件开发者非常关心的问题之一。AutoCAD除了使用命令行与用户进行交互外,还可使用对话框。对话框是一种边界固定的窗口,也是一种最先进、最流行的人机交互界面。运用对话框可以方便地实现程序设计时的数据传输和信息传输,,所以在当今的几乎所有的软件都要用到对话框界面与用户交流。在CAD的二次开发中,可以采用两种方式使用对话框技术:,一种是PDB格式,即使用AutoCAD系统本身提供的可编程对话框技术,另一种是使用Windows机制的对话框设计技术。

2023年dwg是什么文件格式

2023年dwg是什么文件格式

2023年dwg是什么文件格式2023年dwg是什么文件格式DWGAutoCAD创立的一种图纸保存格式,已经成为二维CAD的标准格式,浩辰CAD 及很多其他CAD为了兼容AutoCAD,也直接使用DWG作为默认工作文件。

DXFCAD的另一种图形保存格式,主要用于与其他软件进行数据交互。

保存的文件可以用记事本打开,看到保存的各种图形数据。

DWTCAD模板文件,可在新建图形时加载一些格式设置,除CAD提供的模板文件外,自己也可以创建符合自己需要的模板文件,可以直接替换CAD自带的模板文件,也可以重新命名。

DWF用与网络交换的图形文件格式,可以用发布功能或DWF虚拟打印机输出,用CAD无法打开,但可以用AutoCAD提供的DWF浏览器查看。

在AutoCAD高版本和浩辰CAD中提供了DWF参考底图功能,可以将DWF作为底图插入到图纸中,并可以进行捕捉辅助定位其他图形。

MNU、MNC、MNL、MNS是CAD低版本使用的菜单文件,高版本也可以加载。

其中MNU使用较多,是菜单的源代码,可以直接用记事本编辑,各类专业软件和插件通常利用MNU文件来加载菜单。

CUICAD高版本使用的自定义界面文件,可以在CAD和专用工具编辑,无法直接用记事本打开。

AutoCAD和浩辰CAD高版本支持此类文件,在加载MNU文件后会自动生成CUI文件,SHXAutoCAD、浩辰CAD等CAD采用的字体文件,也叫形文件,其源码文件为__.SHP,可以自行定义后在AutoCAD中编译成SHX文件。

SHX文件分三类,一类是符号形,保存了一些用于制作线型或独立调用的符号;一类是普通字体文件,支持字母、数字及一些单字节符号;一类是大字体文件,支持中文、日文、韩文等双字节文字。

PATAutoCAD、浩辰CAD等CAD采用的填充图案文件,纯文__件,可以用记事本编辑。

可以自己编写或将收集的PAT文件复制粘贴到CAD的填充目录或填充文件中。

LINAutoCAD、浩辰CAD等CAD采用的线型文件,可定义虚线点划线等各种线型。

AutoLISP Visual LISP教程《第七章》

AutoLISP Visual LISP教程《第七章》

对已编译函数直接引用,而不是引用函数名. ① 对已编译函数直接引用,而不是引用函数名.该功能可提高代码的运行速 度并防止在运行时对函数的重定义. 度并防止在运行时对函数的重定义. 去掉函数名使得已编译代码更安全, ② 去掉函数名使得已编译代码更安全,减少程序的长度和缩短程序的加载时 间. 去掉所有局部变量名并对其直接链接引用,同样使得已编译代码更安全, ③ 去掉所有局部变量名并对其直接链接引用,同样使得已编译代码更安全, 并减小程序的大小和加载程序所用的时间. 并减小程序的大小和加载程序所用的时间.
2. 确定要编译的 确定要编译的LSP源文件 源文件
如果源文件在AutoCAD 支持的搜索路径下 , 可以不包括路径名 . 选择 如果源文件在 AutoCAD 菜 单 Tools→Options , 然 后 打 开 Files 选 项 卡 并 选 取 Support File → Search Path,可设置文件搜索路径. ,可设置文件搜索路径. 例如,已设置文件搜索路径为"d:\user",就可以用表达式(vlisp-compile 例如, 已设置文件搜索路径为 , 就可以用表达式( 'st "sample.lsp")编译驱动器 的"\user1"目录下的文件 编译驱动器D的 目录下的文件"sample.lsp". . 编译驱动器 目录下的文件 如果"d:\user"不是文件搜索路径,那么,在指定源文件时必须包括完整的 如果 不是文件搜索路径,那么, 不是文件搜索路径 路径名,如: 路径名, (vlisp-compile 'st "d:\\user\\example.lsp") 或 (vlisp-compile 'st "d:/user/ example.lsp")

毕业论文:基于JAVA的无线人员定位管理软件设计(12)

毕业论文:基于JAVA的无线人员定位管理软件设计(12)
Keywords:wirelesspositing;Java; Guidebee Map; JDBC; Eclipse;cross-platform
目 录
摘要
第1章绪论ﻩ1
1.1课题意义及目的ﻩ1
1.2课题主要研究的内容1
第2章软件开发相关技术介绍ﻩ3
2.1.1 Java的起源及其发展ﻩ3
2.1.2Java程序运行原理3
(4)对软件进行现场测试,以验证设计的可行性、准确性和优越性。


2
Java是Sun公司开发出来的一套编程语言,最早来源于一个叫Green的项目。这个项目原来的目的是为家用电子消费产品开发一个分布式的代码系统,这样就可以通过网络对家用电器进行控制。开始Sun公司的工程师准备采用C++[2],但由于C++过于复杂,安全性差,最后决定基于C++开发一种新语言(Oak语言)。Oak是一种用于网络,精巧而安全的语言,Sun公司曾以此投标过一个交互式电视项目,结果被SGI打败。恰巧此时MarkAndreessen开发的Mosaic和Netscape启发了Oak的成员,Sun的工程师们用Java编制了HotJava浏览器,触发了Sun进军Internet[3]。

Eclipse是一个开放源代码的,基于Java的可扩展开发平台,它通过插件组件构成开发环境。Eclipse附带了一个标准的插件集,其中最著名的插件当属Java开发工具(Java DevelopmentTools,JDT)[7],其界面的主界面如图2-1所示。最初主要用来Java语言开发,但是目前亦有人通过外挂程式使其作为其他计算机语言比如C++和Python的开发工具。Eclipse本身只是一个框架平台,但是众多外挂程式的支持使得Eclipse拥有其他功能相对固定的IDE软体很难具有的灵活性。许多软体开发商以Eclipse为框架开发自己的IDE。Eclipse最初由IBM公司开发,2001年11月贡献给开源社区,现在它由非营利软体供应商联盟Eclipse基金会(Eclipse Foundation)管理[8]。

可视opendcl的学习笔记

ObjectDCL学习笔记(1)初识ObjectDCLAutoLisp简洁、易学、功能强大,可满足用户的绝大多数需求。

对一般的AutoCAD用户来说,AutoLisp 是进行开发的首选语言。

但AutoLisp使用的对话框编程语言DCL和PDB却实在不敢恭维,其功能、界面、编程方法都不能令人满意。

ObjectDCL应运而生。

1.安装和设置ObjectDCL1.1运行ObjectDCL文件包中的Setup.exe,一路Next下去,ObjectDCL就被安装到C:\Program Files\3rd Day Software\ObjectDCL文件夹中。

1.2在安装ObjectDCL的文件夹中,有ObjectDCL.arx和ObjectDCL2004.arx两个arx库文件。

ObjectDCL.arx用于Acad2000/2002,ObjectDCL2004.arx用于Acad2004。

为方便编程,把它们拷贝到Acad 的支持搜索路径中,或直接把安装ObjectDCL的文件夹设置为Acad的支持搜索路径。

1.3创建一个准备存放ObjectDCL编程结果的文件夹,假设为D:\MyOdcl。

把D:\MyOdcl也设置为Acad的支持搜索路径。

现在就可以开始学习ObjectDCL了。

2.启动和认识ObjectDCL在安装ObjectDCL的文件夹中,有个ObjectDCL.exe文件,它就是ObjectDCL的主程序。

运行ObjectDCL.exe,即进入ObjectDCL编辑环境。

ObjectDCL的主窗口很简洁,各菜单项的意义也很清楚,且大部分都在工具条和4个停靠子窗口中有对应的功能,而View菜单是ObjectDCL工具条和下面要说明的4个工具停靠子窗口的开关。

工具条中的第一个图标对应的是工程菜单Project的前5个菜单项,用来添加对话框窗体;工具条中的最后一个图标(照相机)对应的是工程菜单View/Edit Picture Folder菜单项,用来管理图形资源文件夹。

利用对话框语言DCL在CAD二次开发中对LSP语言编写的程序进行可视化管理的探讨

利用对话框语言DCL在CAD二次开发中对LSP语言编写的程序进行可视化管理的探讨摘要:随着AutoCAD 新版本的不断推出,其用户也越来越多,其用户涉及各行各业,但对AutoCAD 本身而言,它的通用性很强,而专业性并不强,因此对其进行二次开发就非常有必要,而且AutoCAD 也给用户留出了二次开发接口,由于支持AutoLISP、ADS、ARX与脚本编程,用户完全可以按照自己的要求对AutoCAD 进行定制,这也就是所说的利用AutoCAD提供的编程接口对其进行二次开发。

这也是AutoCAD应用广泛的魅力所在。

但是随着程序开发的越来越多,对程序的管理必须提到议事日程。

本文利用对话框语言DCL为例对CAD二次开发中的LSP程序管理的一点探讨。

关键词:AutoCAD AutoLISP DCL语言一、AutoLSP和DCL语言简介1.1 AUTOLSP简介LSP(List Processing Language)它产生于50年代后期,是一种资格最老的程序设计语言之一。

LSP语言是一种计算机的表处理语言,是在人工智能学科广泛应用的一种程序设计语言。

AutoLISP语言是嵌套于AutoCAD内部,将LISP语言和AutoCAD有机结合的产物。

使用AutoLISP可直接调用几乎全部AutoCAD命令。

AutoLISP语言既具备一般高级的基本结构和功能,又具有一般高级语言所没有的强大的图形处理功能,是当今世界上CAD软件中被广泛采用的语言之一。

AutoLISP语言能力虽强,但可视化性能差,在AutoLISP程序中配合对话控制语言(Dialog Contro Language,简称DCL语言),实现了程序的人机互动,使AutoLIS程序的应用更加人性化。

1.2DCL语言简介对话框是现今最流行的人机互动面接口。

AutoCAD从R12起,引入了可编程对话框(Programmable Dialog Box,简称PDB)。

dcl驱动程序


20112011-1-2
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
12
6.下拉选单 popup_list: 6.下拉选单
用途:功能类似list_box,正常状况属于收缩单 用途 : 功能类似 , 一列状态。 右侧有一向下箭头, 选取后, 一列状态 。 右侧有一向下箭头 , 选取后 , 会拉下一 列选单供用户选取。 列选单供用户选取。 实例6: 实例 :
AutoCAD二次开发 AutoCAD二次开发 DCL对话框基础 DCL对话框基础
标准默认的DCL单一对象 。 设计好 单一对象。 设计好DCL对 标准默认的 单一对象 对 话画面后, 真正让对话框各DCL对象动起来的 话画面后 , 真正让对话框各 对象动起来的 “幕后高手”就是AutoLISP ,否则,光有漂亮 幕后高手”就是 否则, 是没有用的。 的DCL是没有用的。 是没有用的
20112011-1-2 AutoCAD二次开发——DCL对话框 AutoCAD二次开发——DCL对话框 基础 17
2.显示特定的对话框(new_dialog
20112011-1-2
AutoCAD二次开发——DCL对话框基础 AutoCAD二次开发——DCL对话框基础
4
DCL程序设计的基本结构(实例)
name:dialog{ name:dialog{ label=“对话框DEMO”; label=“对话框DEMO”; :edit_box{ label=“编辑框”; label=“编辑框”; edit_width=12; key=“edit_1”;} :button{ label=“按钮”; label=“按钮”; width=8; key=“button_1”;} ok_cancel; }//end dialog

AUTODESK+MAP的应用与开发

第1章绪论1.1AutodeskMap简介hutodeskMap5或AutoCADMap5(以下简称Map)是美国Autodesk公司2001年推出的融CAD(ComputerAidedDesign,计算机辅助设计[1])、GIS(GeographieInformationSystem,地理信息系统[2])功能为一体的图形录入、编辑、处理、管理和分析的软件,是性能价格较高的地理信息系统图形平台。

Map除了包含AutoCAD丰富的绘图与编辑功能外,还包含特有的为地图制作和地理信息系统(GIS)专业人员设计的功能强大的地图制作工具。

用户主要利用Map的工程工作空间、“地图”菜单和制图工具栏(如图卜1)来创建、维护、分析和生成精确的地图,并管理多图形和多项目[3]。

图l—lAutodeskMap5的主界面5)实现了缓冲区分析等空间分析功能。

为校园的规划设计提供了一定的辅助分析功能。

2,4校园信息的查询与显示2.4.1Map对象的查询类型使用AutodeskMap,用户可以创建从源图形中检索对象子集及其相关信息的查询,用于单个工程。

通过定义对象的子集,用户也可以检索链接到对象并存储在外部数据库的信息。

用户可以保存、修改、编辑查询定义,还可以使用特性转换补充它们(见2.4.3)。

当用户定义一个查询时,需设置选择对象的条件:定位、特性、数据或SOL(如图2—1所示),然后查询基于这些条件的检索对象。

图2-1定义查询对话框-定位一一检索源图形中指定位置的对象。

如下图,使用位置查询可以检索用户指定的某圆形区域内所有的建筑物。

图2-2定位条件对话框-特性——基于AutodeskMap图形对象特性检索对象,如下图,使用特性查询可以检索位于特定图层或其有特定颜色的所有对象。

图2-3特性条件对话框-数据——使用以非图形对象数据形式存储在图形文件中的信息。

如下图,热果用户将面积存储为对象数据,就可以用数据查询来检索西积大于某个特定值的所有地块。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

AutoLISP控制DCL相关函数一览表
AutoLISP函数名
功能简述
加载与释放DCL
load_dialog
加载DCL文件,并返回一个编号整数值
unload_dialog
释放DCL
激活与终止dialog对话框
new_dialog
激活DCL对话框画面
start_dialog
将控制权交给DCL
done_dialog
2.编写的环境不挑剔,只要是一般的文本 编辑软件均适用(如记事本Notepad、 Wordpad、Visual Lisp等)。
3.一个DCL文件内,可以设计多组的 dialog对话界面如同一个LISP程序内可以 设计多个可执行命令一样。
2019/9/8
AutoCAD二次开发——DCL对话框基础
2019/9/8
AutoCAD二次开发——DCL对话框
21
基础
6.接受键的回调
对话框通常包含二组变量:随控件回调而变化的局部变量 以及对应于对话框最终控件取值的全局变量。当用户选择 接受键以后,应用程序需调用一个函数将局部变量永久性 地赋给相应地全局变量。
接受键的另一个重要调用函数时(done_dialog 1)。注意 此时的状态值一定为1。
AutoCAD二次开发——DCL对话框基础
3
※ 第二种方式:以“/*”及“*/”之间夹 带的方式,中间的文字内容不受行数限 制。
如:/* 这是DCL批注测试范例 以夹带的方式处理这三行说明 如此一来,才不用在每行前面都 要加双斜线
*/
2019/9/8
AutoCAD二次开发——DCL对话框基础
4
DCL程序设计的基本结构(实例)
终止显示当前DCL对话框
选择与触发DCL对象、连接、调用子程序
action_tile
触发DCL对象,并执行其后指定的动作及表达式
2019/9/8
AutoCAD二次开发——DCL对话框
15
基础
驱动程序的结构框架
2019/9/8
AutoCAD二次开发——DCL对话框
16
基础
1.加载对话框DCL文件(load_dialog Dclfile)
实例2:
2019/9/8
AutoCAD二次开发——DCL对话框基础
9
3.单选框 radio_button:
用途:需求功能或数据是多选一时。 实例3:
2019/9/8
AutoCAD二次开发——DCL对话框基础
10
4.切换开关(复选框) toggle:
用途:控制此定义的功能或选项是“开”或 “关”。当开关内出现打勾记号时,响应值为“1”, 反之,则为“0”。
AutoCAD二次开发——DCL对话框基础
6
DCL控件的类型及其相应的控 件
操作控件
1 button 2 edit_box 3 image_button 4 list_box 5 popup_list 6 radio_button 7 slider 8 toggle
按钮 编辑框 图像按钮 列表框 下拉列表 单选按钮 滑动条 切换开关
如:(setq dcl_id (load_dialog “*.dcl”))
若加载成功,返回大于0的值,否则返回小于0的 值。
2019/9/8
AutoCAD二次开发——DCL对话框
17
基础
2.显示特定的对话框(new_dialog name Dcl_id)
初始化一个新的对话框并显示它。该函数 中name变量是指DCL文件所包含的某一对 话框的一个字符串;Dcl_id变量用来识别一 个对话框(load_dialog的返回值)。当对话 框显示成功时,该函数返回true否则返回 false。在调用这一函数时,检测该返回值状 态很重要,因为当new_dialog调用失败而又 试图调用start_dialog激活对话框时,将产生 不可预料的后果。
name:dialog{ }//end dialog
label=“对话框DEMO”; :edit_box{
label=“编辑框”; edit_width=12; key=“edit_1”;} :button{ label=“按钮”; width=8; key=“button_1”;} ok_cancel;
AutoCAD二次开发 DCL对话框基础
标准默认的DCL单一对象。设计好DCL对 话画面后,真正让对话框各DCL对象动起来的 “幕后高手”就是AutoLISP ,否则,光有漂亮 的DCL是没有用的。
两个最重要的DCL文件
在CAD的SUPPORT文件夹下,有两个重量级的DCL文件,非常重要, 不要轻易加以修改!以免造成CAD无法正常执行的惨状!
局变量地函数。
2019/9/8
AutoCAD二次开发——DCL对话框
22
基础
7.卸载对话框文件(unload_dialog Dcl_id)
对话框完成操作并且不再使用时,应从内 存中释放对话框文件。这是对话框操作的 最后一个步骤,注意:若DCL文件中有多 个对话框(dialog)定义,其中有的对话框 仍再使用时,不应卸载DCL文件。
使用对话框的第一件事就是通过load_dialog函数 加载DCL文件(可省略扩展名),该函数可包含 多个对话框。若加载成功,则返回一个大于零的 正整数值(假设存入变量Dcl_id中);否则返回 一个负整数,这个Dcl_id在随后调用new_dialog和 unload_dialog函数时可用作被装入的DCL句柄使 用。同时可以检测到该值不大于零时,可以及时 地显示出错信息并返回系统。
接受键的回调函数可按以下二种方式进行: (action_tile "accept" " (set_variables) (done_dialog 1)") (action_tile "cancel" " (done_dialog 0)")或 (action_tile "accept" "(done_dialog 1)") (action_tile "accept" "(done_dialog 0)") (if(1= result) (set_varibles)) 式中ste_varibles是用户自定义地将局部变量赋给永久性全
AutoCAD二次开发——DCL对话框基础
12
6.下拉选单 popup_list:
用途:功能类似list_box,正常状况属于收缩单 一列状态。右侧有一向下箭头,选取后,会拉下一 列选单供用户选取。
实例6:
2019/9/8
AutoCAD二次开发——DCL对话框基础
13
DCL驱动程序(AutoLISP) ——AutoLISP控制DCL的关键技术
2019/9/8
AutoCAD二次开发——DCL对话框
20
基础
5.处理用户操作
激活对话框后,根据用户的交互动作,应 同时执行相应的动作函数,此过程被称为 回调(callback)。通常用户须使用get_tile, get_attr函数返回控件的value及相应的属性 值,再通过set_tile,mode_tile进行相应的处 理。
对于一个完整的程序来说,只有漂亮的对 话框界面是不够的。
AutoCAD的对话框驱动程序可由AutoLISP 完成,为了便于学习和理解驱动程序的主 要构造及解决方法,我们以AutoLISP程序 来介绍AutoCAD中的对话框处理函数。
2019/9/8
AutoCAD二次开发——DCL对话框
14
基础
实例4:
2019/9/8
AutoCAD二次开发——DCL对话框基础
11
5.图像按钮 image_button:
用 途 : 与 button 按 钮 功 能 类 似 , 差 异 在 于 image_button 的框内提示图形可以是幻灯片SLD、 填满单一色块、或绘制示意线。
实例5:
2019/9/8
1.BASE.DCL 内含DCL的原始定义与整合性DCL对象定义。 2.ACAD.DCL 内含CAD所用的各个DCL画面,是一个不错的观摩学
习文件。
2019/9/8
AutoCAD二次开发——DCL对话框基础
1
DCL基本语法结构
1.以文件形态存在的DCL程序(ASCLL文 件),其扩展名最好是.DCL。
2
4.适时的增加批注,将程序更具可读性、 学习性及完整性,DCL程序中的批注有 两种方式(请注意,不能用AutoLISP的 “;”分号)。
※ 第一种方式:加上“//”两个斜线, 双斜线后的一行文字为批注。
如: //本DCL设计时间2007/6
//设计者:四川理工学院
//欢迎学习
2019/9/8
2019/9/8
AutoCAD二次开发——DCL对话框
18
基础
3.对话框控件的初始化
new_dialog调用成功后,系统自动根据DCL文件中 的内容对控件初始化,此时用户也可根据自己的 需要利用程序对控件作相应的初始化设置,如函 数set_tile和mode_tile可改变控件的初始值及控件 的初始状态;函数start_list,add_list,endlist可以变 更列表框的内容;函数start_image, vector_image,fill_image,slide_image和end_image均 用于初始化图像控件的显示内容。同时用户可以 通过函数action_tile对控件设置动作和回调函数, 也可通过client_data_tile将应用程序中的特定数据 与对话框中对话框中某些组成部分相联系。
※ 对话框定义结束前,请注意一定至少有 一个“OK”或“Cancel”键。
相关文档
最新文档