明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3895|回复: 21

向郑老师请教个问题。、

  [复制链接]
发表于 2004-9-21 12:09:00 | 显示全部楼层 |阅读模式
郑老师 你好,由于专业需要开发一个简单的本专业小软件。我昨天买了一本你和其他同志编写的 AutoCAD VAB开发精彩实例教程,但是没有关于事件处理方面的。


         我现在在cad窗口上加了一个工具栏,当点击其中一个工具栏按钮时,在绘图窗口单击后,画出一个圆(在我们专业叫作节点)。以上步骤我可以实现。现在我想在画出一个圆后,自动弹出一个(数据库)对话框,用来输入和 该圆(节点)相关的数据(比如节点流量等),以便我在其他程序中使用这些数据。


        请问如何实现?能否用objectadded事件实现? 希望给一个简单例子。


小弟在此 先谢了!~~
发表于 2004-9-21 12:26:00 | 显示全部楼层
你为什么不另编一个宏画节点?


尽量不要用事件做
 楼主| 发表于 2004-9-21 13:50:00 | 显示全部楼层
请问斑竹,我如果另外编写一个宏,用来输入和前一步点击按钮画出的圆(节点)相关的数据。怎样才能实现 我把圆(节点)画好后,自动弹出我用来输入数据的数据库窗体呢? 即,怎样调用我另编的一个宏呢?


请斑竹 详细解释一下 可以吗? 多谢
发表于 2004-9-21 14:06:00 | 显示全部楼层
你的意思是园用手工画的,而不是程序自动画的吗?
 楼主| 发表于 2004-9-21 14:10:00 | 显示全部楼层
圆(节点)是程序画的,是通过我添加的工具栏,点击按钮后画的。
 楼主| 发表于 2004-9-21 14:17:00 | 显示全部楼层
我现在就是需要实现,把我画好的节点(圆)和与它相关的数据 (比如节点流量,压力,这些数据需要我画好圆后 输入的)用数据库保存起来。


                 然后用其它程序对数据库中的数据进行工程计算,把计算的结果中需要在cad图形中显示的部分,在用程序标注出来。


由于一般工程节点数量比较多,标注比较麻烦,所以 我就想自己做一个程序来完成。


       


请斑竹 或明经论坛各位高手给个思路 小弟先谢了!
发表于 2004-9-21 14:41:00 | 显示全部楼层
调用另外一个宏,直接在代码里用Call



sub mysub1()


.......


mysub2()


end sub


sub mysub2()


.......


end sub


另,你不需要调用另外一个宏呀,只用UserForm1.show
 楼主| 发表于 2004-9-21 15:58:00 | 显示全部楼层
如果直接在画圆代码后,添加userform1.show 这样在弹出窗口userform1后,图形窗口还没能显示画出的圆,按程序执行顺序来讲,应该是先在屏幕画个圆,然后再弹出窗口userform1? 比如下面代码,运行时 就是先显示userform1窗体,而且只有当关闭userform1窗体时,才在屏幕上出现了画的直线。 Sub addtoolbar()
Dim currmenugroup As AcadMenuGroup Set currmenugroup = ThisDrawing.Application.MenuGroups.Item(0) '创建一个名称为mytoolbar的工具条 Dim newtoolbar As AcadToolbar
Set newtoolbar = currmenugroup.Toolbars.Add("mytoolbar2")
'给新工具条添加按钮
Dim newbutton As AcadToolbarItem
Dim openmacro As String '给宏赋值
openmacro = Chr(3) & Chr(3) & "-vbarun" + Chr(32) + "thisdrawing.drawline" + Chr(32)
Set newbutton = newtoolbar.AddToolbarButton("", "newbutton", "draw a line.", openmacro) End Sub
Sub drawline()
Dim pt1(0 To 2) As Double, pt2(0 To 2) As Double
pt1(0) = 100
pt1(1) = 100
pt1(2) = 0 pt2(0) = 500
pt2(1) = 500
pt2(2) = 0
ThisDrawing.ModelSpace.AddLine pt1, pt2
UserForm1.Show End Sub 我现在不知道 如何先显示画出的直线,然后在显示userform1窗体。 请 斑竹 和明经高手 指点。小弟先谢了~
发表于 2004-9-21 16:01:00 | 显示全部楼层
一般的执行顺序是先show窗体再找点画图
 楼主| 发表于 2004-9-21 16:29:00 | 显示全部楼层
谢谢斑竹的及时回复,请问一下,如果下show窗体,怎么在窗体不隐藏的情况下(就是 使窗体象cad工具栏一样 停在绘图屏幕上),在cad图形窗口中选点画图?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 01:44 , Processed in 0.217079 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表