首页 新闻 会员 周边

VB程序频繁切换窗口如何避免“分组相似任务栏按钮”现象

0
悬赏园豆:20 [已关闭问题] 关闭于 2011-02-20 02:17


我用的是windows XP SP2
我用VB写了一个多窗口轮流切换的程序:既我把当前Windows打开的窗口句柄都获取并存为一个long型数组
用SetCursorPos轮流切换为当前激活窗口,以便我的工作。
刚开始启动程序工作得都很正常,不过有时,我窗口开多了(有的临时窗口不在数组内)来回切换时,就打不开了!
窗口明明在任务栏上就是点不开!?右击任务栏上的窗口标题弹出“关闭组”(我已经把“分组相似任务栏按钮”
复选框勾去掉了啊!)有关的代码如下:
Private Declare Function ShowWindow Lib "user32" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long
Private Declare Function GetForegroundWindow Lib "user32" () As Long

Private arr(10) As Long '窗口句柄数组

Sub ChangeW() '切换窗口
Dim a, b, c As Long
Dim k As Long
'0:关闭窗口,1:正常大小显示窗口,2:最小化窗口3:最大化窗口
b = ShowWindow(arr(turns), 1)
a = SetCursorPos(100 + arect(turns).Left, 20 + arect(turns).Top)
 mouse_event MOUSEEVENTF_LEFTDOWN Or MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
turns = turns + 1
If turns > whCount Then
    turns = 0
    For k = 0 To 5  '最小化所有窗口,为下次操作做准备
    b = ShowWindow(arr(k), 2)
    Next
End If
Label5.Caption = turns & "/" & whCount
End Sub

钢的锅的主页 钢的锅 | 初学一级 | 园豆:10
提问于:2010-10-15 02:25
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册