请教:VB与AutoCAD
本帖最后由 作者 于 2003-2-25 16:27:23 编辑VB的窗体都是非模态的,能不能在操作其他窗体时,VB的窗体不会隐藏,就象ACAD中的非模态窗体一样。
R2002以上版本自动支持。
R2002以上版本自动支持,在R14或者R2000中,可以到晓东CAD空间的下载中心中下载一个ARX程序,它支持停靠和浮动的VB自定义控件。VB与AutoCAD
谢谢efan2000为我解决很多问题,我的意思是:针对CAD-VB编的程序窗体在操作CAD时,不被隐藏。大家好!我正在看cad-vb但是又谁告诉我此vb与vb语言有什么区别!
那就要想办法将窗口设为“总在最前面”了
请问斑竹:怎样设置为好?
实际上Always On Top是借助Windows API的SetWindowPos实现的
1、首先应该把以下声明放再窗体的声明部分:Const SWP_NOSIZE = &H1
Const SWP_NOMOVE = &H2
Const SWP_NOACTIVATE = &H10
Const HWND_TOPMOST = -1
Const HWND_NOTOPMOST = -2
Const SWP_SHOWWINDOW = &H40
Private Declare Function SetWindowPos Lib _
"user32" Alias "SetWindowPos" (ByVal hwnd As Long, _
ByVal hWndInsertAfter As Long, ByVal x As Long, _
ByVal y As Long, ByVal cx As Long, ByVal cy As Long, _
ByVal wFlags As Long) As Long
2.使窗口Always On Top时,可以用下面的语句:
SetWindowPos hWnd, HWND_TOPMOST, 0, 0, 0, 0, _
SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOMOVE _
Or SWP_NOSIZE
3.使窗口取消Always On Top功能,用下面的语句:
SetWindowPos hWnd, HWND_NOTOPMOST, 0, 0, 0, 0, _
SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOMOVE _
Or SWP_NOSIZE
谢谢版主!
如果我不希望它“总在最前面”,而是只在Autocad上面,又该怎么办呢?
页:
[1]