如何在vb6中编程激活窗体
我正在构建VB6.0应用程序,用户在其中刷卡,表单会弹出一条感谢信息。Rest都工作正常,唯一的问题是表单被最小化,而应该弹出。如何在vb6中编程激活窗体,vb6,Vb6,我正在构建VB6.0应用程序,用户在其中刷卡,表单会弹出一条感谢信息。Rest都工作正常,唯一的问题是表单被最小化,而应该弹出。 我在谷歌上搜索了他们的表单。但当我写的时候,它会出错 编译错误:找不到方法或数据成员 我是VB新手,如果有任何幼稚的错误,请原谅。 代码: 我需要Form2弹出 谢谢我可以通过 Private Sub Form_Load() Dim lR As Long lR = SetTopMostWindow(Form2.hwnd, True) End Sub 并
我在谷歌上搜索了他们的表单。但当我写的时候,它会出错 编译错误:找不到方法或数据成员 我是VB新手,如果有任何幼稚的错误,请原谅。
代码: 我需要Form2弹出
谢谢我可以通过
Private Sub Form_Load()
Dim lR As Long
lR = SetTopMostWindow(Form2.hwnd, True)
End Sub
并增加了一个模块
Option Explicit
Public Const SWP_NOMOVE = 2
Public Const SWP_NOSIZE = 1
Public Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Public Const HWND_TOPMOST = -1
Public Const HWND_NOTOPMOST = -2
Declare Function SetWindowPos Lib "user32" _
(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
Public Function SetTopMostWindow(hwnd As Long, Topmost As Boolean) _
As Long
If Topmost = True Then 'Make the window topmost
SetTopMostWindow = SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, _
0, FLAGS)
Else
SetTopMostWindow = SetWindowPos(hwnd, HWND_NOTOPMOST, 0, 0, _
0, 0, FLAGS)
SetTopMostWindow = False
End If
End Function</pre>
选项显式
公用工程SWP_NOMOVE=2
公用工程SWP_NOSIZE=1
公共Const FLAGS=SWP_NOMOVE或SWP_NOSIZE
公共常数HWND_TOPMOST=-1
公共常数HWND_NOTOPMOST=-2
声明函数SetWindowPos Lib“user32”_
(ByVal hwnd,只要_
ByVal Hwninserta之后,只要_
ByVal x只要_
再见,只要_
拜瓦尔:只要_
顺便说一句,只要_
ByVal wFlags As Long)As Long
公共函数SetTopMostWindow(hwnd为长,最顶端为布尔值)_
只要
如果Topmost=True,则';把窗户放在最上面
SetTopMostWindow=SetWindowPos(hwnd,hwnd_最上面的,0,0,0_
0,国旗)
其他的
SetTopMostWindow=SetWindowPos(hwnd,hwnd_NOTOPMOST,0,0_
0,0,标志)
SetTopMostWindow=False
如果结束
端函数
可以参考
谢谢您在70年代建立了一个销售代表,您不知道最好不向我们展示您的代码吗?他们的代码没有什么特别之处,但是我添加了它。VB6中的
表单
上没有激活
方法,与VBA中的某些对象不同。你搞错了什么。哦,我想是的,还有其他选择吗?@MicSim任何建议我都试了很多,但没有成功,我的主要形式是在后台看不见的跑步。请帮忙
Option Explicit
Public Const SWP_NOMOVE = 2
Public Const SWP_NOSIZE = 1
Public Const FLAGS = SWP_NOMOVE Or SWP_NOSIZE
Public Const HWND_TOPMOST = -1
Public Const HWND_NOTOPMOST = -2
Declare Function SetWindowPos Lib "user32" _
(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
Public Function SetTopMostWindow(hwnd As Long, Topmost As Boolean) _
As Long
If Topmost = True Then 'Make the window topmost
SetTopMostWindow = SetWindowPos(hwnd, HWND_TOPMOST, 0, 0, 0, _
0, FLAGS)
Else
SetTopMostWindow = SetWindowPos(hwnd, HWND_NOTOPMOST, 0, 0, _
0, 0, FLAGS)
SetTopMostWindow = False
End If
End Function</pre>