查看单个帖子
旧 2009-04-20, 05:04 PM   #1
yang686526
高级会员
 
注册日期: 06-11
帖子: 14579
精华: 1
现金: 224494 标准币
资产: 234494 标准币
yang686526 向着好的方向发展
默认 【转帖】[讨论]vb.net的事件处理

[讨论]vb.net的事件处理
www.dimcax.com
[讨论]vb.net的事件处理
原理,在vba的窗体激活事件中改变users系统变量,vb.net接收该事件将文档级事件处理激活到当前文档
总觉得不太妥当,有好点的办法么?
vb.net - module mtlscad代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28private withevents pacadapp as acadapplication = application.acadapplication
private withevents pacaddoc as acaddocument = pacadapp.activedocument
private sub pacadapp_sysvarchanged(byval sysvarname as string, byval newval as object) handles pacadapp.sysvarchanged
if sysvarname.toupper = "*users5" then pacaddoc = pacadapp.activedocument
end sub
private sub pacaddoc_begindoubleclick(byval pickpoint as object) handles pacaddoc.begindoubleclick
dim ss as acadselectionset
ss = pacaddoc.pickfirstselectionset
if ss.count = 0 then
exit sub
elseif ss.count = 1 then
select case ss.item(0).entityname
case "acdbblockreference"
if ss.item(0).hasattributes then
pacaddoc.sendcommand("_.eattedit" & vbcr & vbcr & vbcr)
end if
case "acdbtext", "acdbmtext"
pacaddoc.sendcommand("_.ddedit" & vbcr & vbcr)
case else
pacaddoc.sendcommand("_.properties" & vbcr)
end select
else
pacaddoc.sendcommand("_.properties" & vbcr)
end if
end sub
vba - thisdrawing代码
private sub acaddocument_activate()
dim puser as string
puser = thisdrawing.getvariable("users5")
thisdrawing.setvariable "users5", str(now)
thisdrawing.setvariable "users5", puser
end sub
yang686526离线中   回复时引用此帖
GDT自动化论坛(仅游客可见)