Переключить окно между maximized и restored

Обсуждение программ nnCron и nnCron LITE

Переключить окно между maximized и restored

Postby Raistlin » Wed, 08 Feb 2017, 19:15

Хочу переключать текущее окно между состояниями maximized и restored. Как можно реализовать?
Windows XP SP3 Corp. + MUI, nnCron 1.93.1125.14, nnBackup 3.02b3 Build 147

Magically yours
Raistlin
User avatar
Raistlin
 
Posts: 159
Joined: Wed, 03 Nov 2004, 12:42

Re: Переключить окно между maximized и restored

Postby dothen » Thu, 09 Feb 2017, 19:03

Можно так
Code: Select all
#( task-win-maximized-restored
SingleInstance
WINAPI: IsZoomed USER32.DLL
: WinMaxUnMax ( -- ) GetForegroundWindow DUP IsZoomed IF 9 ELSE 3 THEN SWAP ShowWindow DROP ;
 WatchHotKey: "${INSERT}" \ Win+Insert
\ WatchHotKey: "@{INSERT}" \ Alt+Insert
Action:
    WinMaxUnMax
    VK_LWIN WAIT-KUP
\    VK_RWIN WAIT-KUP
\    VK_MENU WAIT-KUP
)#
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58

Re: Переключить окно между maximized и restored

Postby Raistlin » Fri, 10 Feb 2017, 19:04

Спасибо. Собственно, нужна только IsZoomed, остальное можно реализовать через имеющиеся слова:
Code: Select all
#( task-win-maximized-restored
  SingleInstance
  WINAPI: IsZoomed USER32.DLL
  WatchHotKey: "${INSERT}" \ Win+Insert
  Action:
    GetForegroundWindow N>S GetForegroundWindow IsZoomed IF WIN-RESTORE ELSE WIN-MAXIMIZE THEN
)#
Windows XP SP3 Corp. + MUI, nnCron 1.93.1125.14, nnBackup 3.02b3 Build 147

Magically yours
Raistlin
User avatar
Raistlin
 
Posts: 159
Joined: Wed, 03 Nov 2004, 12:42

Re: Переключить окно между maximized и restored

Postby dothen » Sat, 11 Feb 2017, 03:36

WIN-MAXIMIZE WIN-RESTORE эти слова реализованы через FOR-WINDOWS где выполняется поиск по маске среди всех окон (верхнего уровня).
Но ведь мы уже нашли окно с помощью GetForegroundWindow.
В общем тут переизбыток.
dothen
 
Posts: 184
Joined: Mon, 16 Mar 2015, 04:58


Return to nnCron forum (Russian)

Who is online

Users browsing this forum: No registered users and 2 guests

cron