RipVanWinkel
Новичок
- Сообщения
- 81
- Репутация
- 0
Помогите со скриптом.
Имеется скрипт располагающий окна открытые окна блокнота в определенном порядке.
Как сделать так, чтобы внутри большого развернутого окна файла txt (со словом в названии title - "Блокнот - 1") располагались другие окна блокнотов, закрепленные поверх этого конкретного окна - со словами в названии title : "Блокнот А", "Блокнот - 2", "Блокнот - 3", "Блокнот -X" ?
Скрипт должен все время находится в трее. Если открывается окно со словом в названии "Блокнот - 1" - он тут же запускает мелкие окна и располагает их с привязкой к правому верхнему углу экрана.
Если окно со словом в названии "Блокнот - 1" закрывается - скрипт тут же закрывает мелкие окна, со словами в названии title : "Блокнот А", "Блокнот - 2", "Блокнот - 3", "Блокнот -X".
Если окно со словом в названии "Блокнот - 1" скрыть или загородить другим окном - он тут же скроет или загородит мелкие окна.
Сейчас скрипт выглядит так:
Имеется скрипт располагающий окна открытые окна блокнота в определенном порядке.
Как сделать так, чтобы внутри большого развернутого окна файла txt (со словом в названии title - "Блокнот - 1") располагались другие окна блокнотов, закрепленные поверх этого конкретного окна - со словами в названии title : "Блокнот А", "Блокнот - 2", "Блокнот - 3", "Блокнот -X" ?
Скрипт должен все время находится в трее. Если открывается окно со словом в названии "Блокнот - 1" - он тут же запускает мелкие окна и располагает их с привязкой к правому верхнему углу экрана.
Если окно со словом в названии "Блокнот - 1" закрывается - скрипт тут же закрывает мелкие окна, со словами в названии title : "Блокнот А", "Блокнот - 2", "Блокнот - 3", "Блокнот -X".
Если окно со словом в названии "Блокнот - 1" скрыть или загородить другим окном - он тут же скроет или загородит мелкие окна.
Сейчас скрипт выглядит так:
Код:
#include <WinAPISys.au3>
Opt("WinTitleMatchMode", 2)
Opt("WinWaitDelay", 10)
; область рабочего стола
$tRECT = _WinAPI_GetWorkArea()
$iWidth = $tRECT.Right - $tRECT.Left
$iHeight = $tRECT.Bottom - $tRECT.Top
; поиск окон
$aList = WinList("Блокнот")
If Not $aList[0][0] Then Exit MsgBox(0x40000, "", "Окна не найдены")
If $aList[0][0] = 4 Then
; размещение четырёх окон в два ряда
$iDX = $iWidth / 2
$iDY = $iHeight / 2
WinMove($aList[1][1], "", 0, 0 , $iDX, $iDY)
WinMove($aList[2][1], "", $iDX, 0 , $iDX, $iDY)
WinMove($aList[3][1], "", 0, $iDY , $iDX, $iDY)
WinMove($aList[4][1], "", $iDX, $iDY , $iDX, $iDY)
Else
; размещение окон в один ряд
$iDelta = $iWidth / $aList[0][0]
For $i = 1 To $aList[0][0]
WinMove($aList[$i][1], "", $iDelta * ($i - 1), 0 , $iDelta, $iHeight)
Next
EndIf
For $i = 1 To $aList[0][0]
WinActivate($aList[$i][1])
Next