cad二次开发中介绍vba

源代码在线查看: cad世界__autocad vba初级教程 (第九课创建选择集).htm

软件大小: 490 K
上传用户: mislrb
关键词: cad vba 二次开发
下载地址: 免注册下载 普通下载 VIP

相关代码

				
				
				CAD世界__Autocad VBA初级教程 (第九课:创建选择集)
				
				BODY {
					BACKGROUND-IMAGE: url(image/pagebg.gif)
				}
				.style1 {
					FONT-WEIGHT: bold; COLOR: #ff0066
				}
				.style2 {
					FONT-WEIGHT: bold; FONT-SIZE: 9pt; COLOR: #333333; FONT-FAMILY: Times New Roman, Times, serif, "黑体"
				}
				.style3 {
					COLOR: #336699
				}
				.style4 {
					COLOR: #333333
				}
				.style6 {
					COLOR: #f76c8c
				}
				.style15 {
					COLOR: #ff0033
				}
				.style16 {
					FONT-WEIGHT: bold; COLOR: #ff0000
				}
				
				
				
								function MM_reloadPage(init) {  //reloads the window if Nav4 resized
				  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
				    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
				  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
				}
				MM_reloadPage(true);
				//-->
				
				
				
				
				
								src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/headadA.js">
				
				
				  
				  
				    
				      				      src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/headmenuA.js">
				    
				
				  
				  
				    
				      
				        
				    
				      
				        
				        
				          
				            				            align=center>
				              
				              
				              
				                				                  src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/mu_search_red.gif" 
				                  width=159>
				              
				                  				                  value=all name=datesearch> 				                  name=AreaSearch> 
				        
				          				            src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/leftmenu2_01_red.gif" 
				            width=159> 
				            
				              
				              
				                
				                  				                  src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/class2.js">
				                
				        
				          				            src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/leftmenu2_02_red.gif" 
				            width=160> 
				            
				              
				              
				                
				                  				                  src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/lttop6.js">
				                
				        
				          				            src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/mu_mail_red.gif" 
				            width=160> 
				            
				              
				              
				                
				                  				                  src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/tougaoA.js">
				                
				    				    background="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/lbg1.gif">
				    				    
				      -->
				      
				        
				        
				          当前位置:ICAD首页 >> 数字化设计 >> CAD >> 
				        正文
				      				      href="http://www.icad.com.cn/zhuanti/jingdiananli/index.htm" 
				      target=_blank>				      src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/jingdiananli2.gif" width=468 
				      align=absMiddle border=0>
				      
				        
				        
				          				            style="FONT-SIZE: 16px">Autocad VBA初级教程 
				        (第九课:创建选择集)
				        
				          作者:普天同庆 | 阅读次数:2089 转自:				            color=#cc0000>CAD世界网-论坛 
				      时间:2005年6月2日14:55
				      
				        
				        
				          				            size=3>
				            1.在创建对象的同时可以直接引用.以前的例程中已经做过多次了,现在复习一下,看例程:先随机画300个圆,在画圆时直接引用,然后再把这些圆根本大小修改颜色.
				            Sub c300()
				            Dim myselect(0 To 300) As AcadEntity '定义选择集数组Dim pp(0 To 2) 
				            As Double '圆心坐标
				            For i = 0 To 300 '循环300次pp(0) = 3000 * Rnd: pp(1) = 3000 * 
				            Rnd: pp(2) = 0 '设置圆心坐标Set myselect(i) = 
				            ThisDrawing.ModelSpace.AddCircle(pp, Rnd * 30 + 1) '画不同大小的圆Next 
				            i
				            For i = 1 To 300If myselect(i).Radius > 10 Then 
				            '判断圆的直径是否大于10 myselect(i).color = Int(255 * Rnd + 1) 
				            '大圆颜色改为随机数Else myselect(i).color = 0 '小圆改为白色End 
				            IfNext i
				            ZoomExtents '缩放到显示全部对象
				            End Sub
				            pp(0) = 3000 * Rnd: pp(1) = 3000 * Rnd: pp(2) = 
				            0这一行实际上应该是三条语句,用三行合并为一行,用冒号分开rnd是随机数函数,它的数值为0-1之间的小数,3000*rnd得到的数值就是在0-3000之间的随机数
				            Set myselect(i) = ThisDrawing.ModelSpace.AddCircle(pp, Rnd * 30 + 
				            1)这条语句的作用是以pp点坐标为圆心,画一个圆,半径是1-30之间的随机数,赋值给myselect选择集.
				            2.提标用户在屏幕中选取选择语句这样写:Set sset = 
				            ThisDrawing.SelectionSets.Add("ss1"),其中”ss1”是一个选择集名称,这个参数可以随意写一个,注意不要重复就可以了.下面的例程是让用户选择对象,然后把选中的对象改为绿色,最后把选择集删除
				            Sub mysel()
				            Dim sset As AcadSelectionSet '定义选择集对象Dim element As 
				            AcadEntity '定义选择集中的元素对象
				            Set sset = ThisDrawing.SelectionSets.Add("ss1") 
				            '新建一个选择集sset.SelectOnScreen '提示用户选择
				            For Each element In sset '在选择集中进行循环  element.color = 
				            acGreen '改为绿色Nextsset.Delete '删除选择集
				            End Sub
				            3.选择全部对象用select方法,参数为acSelectionSetAll 
				            ,看例程,这个程序选择全部对象,显示选中的对象,并计算对象数.Sub allsel()Dim sel1 As 
				            AcadSelectionSet '定义选择集对象Set sel1 = 
				            ThisDrawing.SelectionSets.Add("s") '新建一个选择集Call 
				            sel1.Select(acSelectionSetAll) '全部选中sel1.Highlight (True) 
				            '显示选择的对象sco= sel1.Count '计算选择集中的对象数MsgBox "选中对象数:" & 
				            CStr(sco) '显示对话框End Sub
				            3.运用select方法上面的例题已经运用了select方法,下面讲一下select的5种选择方式:1:择全部对象(acselectionsetall)2.选择上次创建的对象(acselectionsetlast)3.选择上次选择的对象(acselectionsetprevious)4.选择矩形窗口内对象(acselectionsetwindow)5.选择矩形窗口内以及与边界相交的对象(acselectionsetcrossing)还是看代码来学习.其中选择语句是:Call 
				            sel1.Select(Mode, p1, 
				            p2)Mode已经定义为5,也就是选择矩形窗口内以及与边界相交的对象,p1和p2是两个点坐标,Sub 
				            selnew()Dim sel1 As AcadSelectionSet '定义选择集对象Dim p1(0 To 2) 
				            As Double '坐标1Dim p2(0 To 2) As Double '坐标2p1(0) = 0: p1(1) 
				            = 0: p1(2) = 0 '设置坐标1p2(0) = 300: p2(1) = 300: p2(2) = 0 
				            '设置坐标1Mode = 5 '把选择模式存入mode变量中Set sel1 = 
				            ThisDrawing.SelectionSets.Add("sel3") '新建一个选择集Call 
				            sel1.Select(Mode, p1, p2) '选择对象sel1.Highlight (ture) 
				            '显示已选中的对象End Sub
				            其他课程回顾:
				            				            href="http://www.icad.com.cn/html/2005-4-25/2005425163833.asp">				            color=#0000ff>Autocad VBA初级教程 (第一课:入门)
				            				            href="http://www.icad.com.cn/html/2005-4-25/2005425163954.asp">				            color=#0000ff>Autocad VBA初级教程 (第二课 编程基础)
				            				            href="http://www.icad.com.cn/html/2005-4-26/2005426112553.asp">				            color=#0000ff>Autocad VBA初级教程 (第三课 编程基础二)
				            				            href="http://www.icad.com.cn/html/2005-4-26/2005426112638.asp">				            color=#0000ff>Autocad VBA初级教程 (第四课 程序的调试和保存)
				            				            href="http://www.icad.com.cn/html/2005-5-8/20055893119.asp">				            color=#0000ff>Autocad VBA初级教程 (第五课 画函数曲线)
				            				            href="http://www.icad.com.cn/html/2005-5-8/20055893328.asp">				            color=#0000ff>Autocad VBA初级教程 (第六课 数据类型的转换)
				            				            href="http://www.icad.com.cn/html/2005-5-9/200559102708.asp">				            color=#0000ff>Autocad VBA初级教程 (第七课 写文字)				            href="http://www.icad.com.cn/html/2005-5-30/2005530154133.asp">				            color=#0000ff>Autocad VBA初级教程 
				            (第八课:图层操作)(编辑:zhaozh)
				        
				          
				            
								if (window.print) {
				document.write('【打印本文】 ');
				}
				// End -->
				
				            【				            href="http://old.icad.com.cn/review/index.asp?article=200562132544" 
				            target=_blank>发表评论】【				            href="javascript:window.close()">				          color=#cc0000>关闭窗口】
				      
				        
				        
				          上一篇:				            href="http://old.icad.com.cn/html/2005-6-2/200562132358.asp" 
				            target=_blank>[入门] DMS应用系统功能模块简介下一篇:				            href="http://old.icad.com.cn/html/2005-6-2/200562132713.asp" 
				            target=_blank>[文章]从传统OA到协同OA的飞跃 
								src="CAD世界__Autocad VBA初级教程 (第九课创建选择集).files/endA.js">
				
							

相关资源