回 帖 发 新 帖 刷新版面

主题:请教VB关于摸态窗口的问题 请各位大哥指点迷津

我想让我的程序中跳出的窗口能锁定电脑屏幕
就是说,如果不对跳出的窗口做回应的话,将不能做其它任何操作。
(这个和摸态窗口不一样,摸态窗口你可以不管他,照样运行其他应用程序,这不是我想要的。)

请问VB能做到吗?在XP操作系统下
请路过的高手帮忙解答,小弟先谢谢了。

回复列表 (共5个回复)

沙发


怎么没人理我啊[em21][em21][em21]

板凳

MsgBox "hello world!", vbSystemModal

3 楼

终于有人理我了,嘿嘿,谢谢你的回复 [em1]

我知道VBSYSTEMMODAL
它就是让MSG窗口挂在所有程序的前面,但是还是可以运行Windows下的其它程序

我要的是不能运行其它程序的


看来是没指望了,哎~~~[em31]
想别的办法吧

4 楼

楼主的想法应该是想让某个窗口始终在桌面的最上面,不关闭这个窗口就不能进行其他的操作,这个可以用API函数来解决,先声明如下API函数:
Private 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

在窗体的load过程放入如下代码:
Private Sub Form_Load()
    Dim retvalue As Long
    retvalue = SetWindowPos(Me.hwnd, -1, Me.CurrentX, Me.CurrentY, 12, 20, &H2)
    Me.Top = 0
    Me.Left = 0
    Me.WindowState = 2 'Maximized
End Sub

其中的12和20两个数字分别表示窗体的宽和高,单位为像素。

5 楼



谢谢4楼的答复,但是API函数我还不懂,但是你的建议我收下了,现在去了解一下API
再次感谢。

我来回复

您尚未登录,请登录后再回复。点此登录或注册