mccad
发表于 2003-10-13 18:57:00
EFAN版主在前几贴中已经有这一段语句来获取ACAD的句柄:
lHwnd = GetParent(GetParent(acadApp.Activedocument.hwnd))
怎么会看了后边忘了前边。
topirol
发表于 2003-10-14 09:19:00
lHwnd = GetParent(GetParent(acadApp.Activedocument.hwnd))
是获得Activedocument的句柄,而不是CAD主窗口的句柄,把这个lHwnd 传给seticon函数,只能改cad文档(子窗口)的图标,而不能改cad主窗口的图标(所以就达不到我想要的效果),所有我才有那个提问的。
---虽然这个效果也没什么用途,但这是学习
efan2000
发表于 2003-10-14 12:24:00
不是吧,acadApp.Activedocument.hwnd是当前文档的句柄。使用GetParent获取其父窗口的句柄,也就是MDI的句柄。再使用一次,获取MDI父窗口的句柄,也就是应用程序的句柄。
如果是R2004,试一下直接使用acadApp.hwnd来设置图标。
topirol
发表于 2003-10-14 14:19:00
问题解决,谢谢
iwzw
发表于 2003-10-14 18:29:00
efan2000发表于2003-10-13 12:38:00static/image/common/back.gif前面有错,是修改SetWindowPos lHwnd, 0, Form1.ScaleLeft, Form1.ScaleTop, Form1.ScaleWidth, Form1.ScaleHeight, 0这一句。
隐藏窗口的标题需要另外的API函数。
下面的例子中acadhwnd代
为什么在win98下不可用?另外,隐藏后如何恢复?谢谢!
efan2000
发表于 2003-10-14 18:43:00
恢复可以使用的下面的方式:
Dim L As Long
L = GetWindowLong(acadhwnd, GWL_STYLE)
L = L or WS_CAPTION)
L = SetWindowLong(acadhwnd, GWL_STYLE, L)
在98下也是一样的原理,检查一下程序有没有错误。
iwzw
发表于 2003-10-14 21:21:00
程序没问题,我在两台win98的机器上试过,均不能隐藏cad窗口标题;xp下可以隐藏,但无法将vb窗口拖动放大和缩小。
ZKSJLL
发表于 2004-5-12 13:25:00
acadApp.Activedocument.hwnd不支持此属性,为之奈何?
randyhuang
发表于 2004-6-30 10:00:00
我也有同样的问题,望指点
tfyyf
发表于 2004-7-7 09:17:00
可加入后,不知如何控制CAD标题栏和菜单显示或不显示的方法。谢谢!