superflq 发表于 2010-3-15 12:05:57

如何判断已经有全屏程序在运行?

做了一个整点报时的小程序

但是发现一个问题,就是如果在全屏看电影,或者全屏玩游戏的时候,
我不要整点报时的GUI弹出要怎么弄
说简单点就是如何判断已经有全屏程序在运行?
这个是我的GUI
$hwnd = GUICreate("整点报时", 160, 60, 0, 0, 0x80000000, 0x00080088)

superflq 发表于 2010-3-15 12:06:19

自己先顶一个

superflq 发表于 2010-3-15 12:07:06

试了下WinGetState(""),可是无论全屏程序是否运行都显示为7

superflq 发表于 2010-3-15 12:41:04

已经解决了
        $Pos = WinGetPos("")
        If $Pos = @DesktopWidth And $Pos = @DesktopHeight Then
                Return
        Else
不知道有没其他的方法

superflq 发表于 2010-3-15 12:41:31

已经解决了
        $Pos = WinGetPos("")
        If $Pos = @DesktopWidth And $Pos = @DesktopHeight Then
                Return
        Else
不知道有没其他的方法

gapkiller 发表于 2010-3-15 12:47:46

以下两种可行但不是很严谨的方式:
1. check 任务栏的颜色
2. check 当前窗口的坐标和大小

superflq 发表于 2010-3-15 13:30:32

以下两种可行但不是很严谨的方式:
1. check 任务栏的颜色
2. check 当前窗口的坐标和大小
gapkiller 发表于 2010-3-15 12:47 http://www.autoitx.com/images/common/back.gif


    嗯,不知道有没其他方法

afan 发表于 2010-3-15 23:34:00

一个思路,判断像素……$a = PixelGetColor(0, @DesktopHeight - 1)
While 1
        If PixelGetColor(0, @DesktopHeight - 1) <> $a Then Msgbox(0, 0, '有全屏')
        Sleep(10)
WEnd
页: [1]
查看完整版本: 如何判断已经有全屏程序在运行?