Get-WindowState

Получить состояние окна.
Параметры

  • -Handle Хендл окна

Возвращаемое значение

  • PSCustomObject.

    PropertyDescription
    isForegroundОкно на переднем плане
    isVisibleОкно видимо (не скрыто)
    isMinimizedОкно свёрнуто
    isMaximizedОкна максимизированно (развёрнуто на весь экран)
    isTopMostПоверх всех окон

Примеры

  1. Найти окно блокнота и получить состояние окна.

    Wake up, Neo, select all

    Clear-Host
    $h = Find-Window -Title "блокнот" # найти окно, в имени которого содержится слово блокнот
    if(!$h){ # если окно не найдено
    Write-Host "Окно не найдено" -ForegroundColor Red
    Stop-Script # остановить скрипт
    }

    Get-WindowState $h.handle[0]
  2. Найти окно блокнота, если свёрнуто, то развернуть, иначе свернуть.

    Wake up, Neo, select all

    Clear-Host
    $h = Find-Window -Title "блокнот" # найти окно, в имени которого содержится слово блокнот
    if(!$h){ # если окно не найдено
    Write-Host "Окно не найдено" -ForegroundColor Red
    Stop-Script # остановить скрипт
    }

    $status = Get-WindowState $h.handle[0]
    if($status.isMinimized){
    Write-Host "Окно было свёрнуто, теперь восстановлено" -ForegroundColor Cyan
    Show-Window $h.handle[0] -State Restore
    }
    else{
    Write-Host "Окно не свёрнуто, теперь свёрнуто" -ForegroundColor Cyan
    Show-Window $h.handle[0] -State Minimize
    }