作者在 2007-12-14 13:06:35 发布以下内容
今天在论坛看到一位朋友说他的QQ登录号码输入框没见了,并且发上来了一个截图。其实,要实现这也不能。想起以前学习API时用到过一个函数叫ShowWindow。
函数声明为:
Declare Function ShowWindow Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
第一个参数hwnd是一个窗口句柄(广义的窗口包括控件),第二个参数取不同的值可以实现不同的效果。其中当它为0时,就可以用来隐藏一个窗体,取5时可以显示一个窗口。
我做了如下的模拟:
打开QQ.exe,出现登录界面,用Spy++查处号码输入框的句柄为198082(每次运行这个值都不一样,不过有办法获取到)
然后使用VB写了如下代码:
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Const SW_HIDE = 0
Private Sub Command1_Click()
ShowWindow 198082, SW_HIDE
End Sub
运行,点击"Command1",我预期的效果出现了: