Није ли изузетно неугодно како, барем на Виндовс-у, било који прозор може да се појави било где на екрану? Да ли вам та свакодневна насумичност иде на живце и више бисте волели да имате већу контролу над постављањем прозора на екрану? Па, сада можете, захваљујући АутоХотКеи-у.

У овом водичу ћемо видети како можете да решите овај проблем помоћу АутоХотКеи скрипте. Изградићемо га тако да се креће било који прозор у центар екрана притиском на тастер. Звучи слатко? Да видимо како се то ради!

Како да подесите интервентни тастер за центрирање прозора помоћу АутоХотКеи-а

Пола битке при креирању скрипте је смишљање како ће она функционисати пре него што унесете само један знак. Дакле, хајде да направимо такав акциони план на обичном енглеском који ћемо онда "мутирати" у сценарио.

Виндовс има „проблем“.

Виндовс (као у „правоугаоницима на нашим екранима“, а не ОС) има тенденцију да искаче било где на екрану. То омета пажњу, а може бити и досадно када се понавља. Нарочито када имате посла са више подносилаца захтева који искачу на различитим местима, очекујући кориснички унос.

Решење проблема

Осим што шаље притиске на тастере и кликове мишем на било који прозор, АутоХотКеи такође може да манипулише њима. Видели смо у прошлости како можете користите АутоХотКеи да бисте закачили прозоре „увек на врху“ користећи пречицу на тастатури. Међутим, овог пута ћемо искористити предности АутоХотКеи-ових могућности манипулације прозорима да:

  1. „Прочитајте“ ИД активног прозора.
  2. Такође "прочитајте" његове димензије (ширина и висина).
  3. „Прочитајте“ димензије монитора.
  4. Комбинујте димензије монитора и прозора да бисте израчунали оптималне координате за представљање наведеног прозора у центру екрана.
  5. Померите прозор на те координате.

На крају ћемо мапирати горе наведено на пречицу. На овај начин, можете га назвати „на захтев“ уместо да га примењујете на све прозори - који би могли да ометају апликације и игре преко целог екрана.

Имајте на уму да ћемо у овом водичу заронити директно у АутоХотКеи. Ако нисте упознати са тим и желите да научите више унапред, погледајте наш брзи АутоХотКеи водич за почетнике.

Прво, подешавање ХотКеи-а

Споменули смо како ћемо мапирати функцију коју ћемо креирати у пречицу. Међутим, вероватно је боље да почнемо са тим делом да га склонимо с пута.

Започните преузимањем инсталационог програма са Званичан сајт АутоХотКеи-а. Идите на „тренутну“ верзију уместо в2 бета или застареле верзије 1.0. Затим га инсталирајте на рачунар.

Покрените Филе Екплорер (најбржи начин је са комбинацијом тастера Виндовс + Е) и пређите на путању на којој желите да креирате своју скрипту. Када је АутоХотКеи инсталиран, имаћете неке нове опције које се појављују у менију десним кликом. Дакле, кликните десним тастером миша на празан простор прозора Филе Екплорер-а и изаберите Ново > АутоХотКеи Сцрипт.

Дајте назив датотеци ваше скрипте, а затим кликните десним тастером миша на њу и Уредити то. Ако не користите апликацију за уређивање текста прилагођену коду, као што је Висуал Студио Цоде или Нотепад++, користите Виндовс Нотепад. Избегавајте уређиваче као што је Вордпад, који би вашем „коду“ могли додати бескорисну (за ту сврху) синтаксу.

Када сте у уређивачу по избору, видећете да ваша АутоХотКеи скрипта већ има неке редове унапред попуњене на врху. Они су ту из разлога стабилности и компатибилности. Они се могу подесити, али оставите их онаквима какви јесу за овај водич.

„Померите“ два или три реда испод њих и унесите пречицу која ће покренути вашу функцију. Можете направити комбинацију тастера користећи "+" за Схифт, "^" за ЦТРЛ, "!" за Алт и „#“ за Виндовс тастер, као и било који „нормалан“ тастер са тастатуре (слова и бројеви).

На пример, да би комбинација ЦТРЛ + И покренула вашу скрипту, користите:

^и::

Двоструко „:“ је као да кажете: „Хеј, АутоХотКеи, пресликај стринг или комбинацију тастера са леве стране на све што је на десној страни“.

„Померите“ два или три реда испод тога притиском на Ентер и откуцајте „ретурн“, што ће означити крај одређене функције. Комплетан резултат би требао изгледати овако:

^и::
; Ово је коментар.
повратак

Тхе "; Ово је коментар." линија је управо то, коментар у "коду" скрипте који АутоХотКеи неће извршити. Ту је у сврху документације да означи место где ћемо унети „код“ скрипте у следећим корацима.

Ако сте пратили наш водич даље креирање интервентних тастера специфичних за апликацију помоћу АутоХотКеи-а у прошлости, у овом случају... немој. Желите да ваш интервентни тастер за центрирање прозора буде „глобално“ у центру било који прозор из било који апликација. Ако је „везете“ за одређену апликацију, она ће деловати само на прозорима ове апликације.

Добијте детаље активног прозора

Желимо да наша пречица делује на активни прозор, а потребне су нам и његове димензије за наше прорачуне. Те детаље можемо пронаћи са следећим:

ВинГетТитле, АцтивеВиндовТитле, А
ВинГетПос ширина, висина, %АцтивеВиндовТитле%

Замените ред за коментаре који смо додали скрипти у претходном одељку са два реда изнад. Резултат?

  • Први ред хвата наслов активног прозора.
  • Други ред чита његову ширину и висину и мапира их у речи/варијабле „Ширина“ и „Висина“, које ћемо следеће користити за наше прорачуне.

Добили смо детаље активног прозора, али су нам потребне и димензије видљиве области монитора да бисмо постигли свој циљ. Срећом, пронаћи их је још лакше.

Шта је са подручјем примарног монитора?

Нису нам потребне додатне команде да бисмо пронашли ширину и висину нашег примарног монитора. АутоХотКеи долази са две унапред подешене променљиве које већ садрже те информације за нас: „А_СцреенВидтх“ и „А_СцреенХеигхт“.

Дакле, када их видите у следећем одељку, они већ „садрже“ ширину и висину примарног монитора. Није потребно ништа да им се додели тачна вредност. Дакле, можемо их директно користити у нашим прорачунима.

Време је за израчунавање циљне позиције

Можемо укључити прорачуне директно у тачке скрипте где су нам потребне. Ипак, лакше је и боље за читљивост ако их мапирамо у две варијабле и онда користите те варијабле у нашој скрипти.

Дакле, идемо на „ТаргетКс“ као променљиву која ће држати хоризонталне координате и „ТаргетИ“ као један са вертикалним координатама где треба да померимо прозор да би се појавио у центру екран.

ТаргетКс := (А_СцреенВидтх/2)-(Ширина/2); Овде израчунавамо хоризонталу прозор мета...
ТаргетИ := (А_СцреенХеигхт/2)-(Висина/2); ...а овде вертикални.

Хајде да дешифрујемо те редове на обичном енглеском:

  • „ТаргетКс“ и „ТаргетИ“ су две променљиве.
  • ":=" обавештава АутоХотКеи да променљиве треба да буду једнаке резултатима прорачуна са десне стране и да те резултате треба третирати као бројеве.
  • „(А_СцреенВидтх/2)“ дели пуну ширину монитора са два.
  • "(Видтх/2)" ради исто за ширину активног прозора.

Уз горенаведено, одузимамо половину ширине активног прозора од половине ширине екрана. Оно што је остало је простор са леве стране прозора - од леве стране екрана и до места где би прозор требало да се појави. Други ред ради исто, али за висину.

Сада да промените положај прозора

Опремљени свемоћним знањем стеченим из мистичних команди које смо видели изнад, сада можемо да направимо нашу магичну инкантацију која ће употпунити ритуал телепортације прозора. Или, на обичном енглеском, користите команду АутоХотКеи „ВинМове“ да бисте померали прозоре по екрану.

ВинМове од нас очекује да га „нахранимо“ са најмање три информације да би извршио своје дело: наслов циљаног прозора и координате где да га преместимо. Пошто смо те делове информација већ мапирали у променљиве, команда је једноставна као:

ВинМове, %АцтивеВиндовТитле%, %ТаргетКс%, %ТаргетИ%

У горе наведеном:

  • „ВинМове“ је наредба АутоХотКеи која помера прозор.
  • „%АцтивеВиндовТитле%“ је променљива где је мапиран наслов активног прозора.
  • „%ТаргетКс%“ и „%ТаргетИ%“ су хоризонталне и вертикалне координате где треба померити прозор.

Такође можете променити величину прозора помоћу ВинМове-а, прескочити оне са одређеним текстуалним убодима у њиховим насловима или садржају, итд. Пошто су те карактеристике ван оквира овог чланка, проверите Званична документација АутоХотКеи-а о команди ВинМове за више о њима.

Финал Сцрипт

Коначно, стижемо до најизазовнијег дела нашег путовања. Припремите се за следећи корак, очекује вас да сачувате сценарио и, па... Покрени.

Да, то је било то - сценарио је готов, и не постоји ништа друго него да га испробате. Користите пречицу коју сте дефинисали и сваки активни прозор ће се померити у центар вашег екрана.

Коначна датотека скрипте, отворена у уређивачу текста, требало би да изгледа отприлике овако:

#НоЕнв; Препоручено за перформансе и компатибилност са будућим АутоХоткеи издањима.
; #Варн; Омогућите упозорења да бисте помогли у откривању уобичајених грешака.
СендМоде Инпут; Препоручено заНова скрипте због своје супериорне брзине и поузданости.
СетВоркингДир %А_СцриптДир%; Осигурава конзистентан почетни директориј.
^и::
ВинГетТитле, АцтивеВиндовТитле, А; Преузмите активни прозор'с наслов за "циљање" то/делујући на то.
ВинГетПос Видтх, Хеигхт, %АцтивеВиндовТитле%; Активирајте се прозор'с поситион, усед за наши прорачуни.
ТаргетКс := (А_СцреенВидтх/2)-(Ширина/2); Израчунајте хоризонталну мету где ћемо померити прозор.
ТаргетИ := (А_СцреенХеигхт/2)-(Висина/2); Израчунајте вертикални положај оф тхе прозор.

ВинМове, %АцтивеВиндовТитле%, %ТаргетКс%, %ТаргетИ%; Померите прозор на израчунате координате.

повратак

Имајте на уму да можете копирати горњу скрипту, налепити је у Нотепад или сличан уређивач текста и сачувати је са екстензијом АХК. Затим га „покрените“ са инсталираним АутоХотКеи-ом да центрирате било који прозор кад год притиснете ЦТРЛ + И. Ако вам се не свиђа та пречица, подесите линију „^и::“ на другу комбинацију тастера. На пример, !+ц:: би мапирао функцију у комбинацију тастера Схифт + Алт + Ц.

Бонус Трацк

Ради ваше удобности, одлучили смо да дочарамо и укључимо секундарну скрипту која ће бити корисна онима који имају подешавања двоструког монитора.

Да би овај чланак био поједностављен, уместо тога смо укључили информације о томе како скрипта функционише у њему у облику коментара. Можете их уклонити из своје итерације.

Кратка прича о томе како се разликује од горње скрипте је да додајемо и променљиву ПоситионТоггле и неку „ИФ логику“. Затим их користимо за „померање“ прозора између монитора. Треба напоменути да је то неелегантно и "хацк-и" решење проблема. Међутим, преферирали смо га него поједностављенији код јер је овај приступ лакши за разумевање и подешавање за све који нису упознати са АутоХотКеи-ом.

#НоЕнв; Препоручено за перформансе и компатибилност са будућим АутоХоткеи издањима.
; #Варн; Омогућите упозорења да бисте помогли у откривању уобичајених грешака.
СендМоде Инпут; Препоручено заНова скрипте због своје супериорне брзине и поузданости.
СетВоркингДир %А_СцриптДир%; Осигурава конзистентан почетни директориј.
ПоситионТоггле = 1; Користите а бројкао а прекидач за обележавање на који прате прозор треба да се појави.
^и::
ВинГетТитле, АцтивеВиндовТитле, А
ВинГетПос ширина, висина, %АцтивеВиндовТитле%

Ако је ПоситионТоггле = 1; Проверавати стање прекидача и "урадите шта је између витичастих заграда" ако је комплетдо1за наш примарни монитор.
{
ТаргетКс := (А_СцреенВидтх/2)-(Видтх/2)
ТаргетИ := (А_СцреенХеигхт/2)-(Висина/2)
ПоситионТоггле = 2; "Зврчка" прекидач тако да ако поново употребимо интервентни тастер, наш активни прозор ће се померити на други монитор.
}
Иначе Ако ПоситионТоггле = 2; Да ли смо раније користили интервентни тастер, "треперење" број за пребацивање на други монитор? Онда би скрипта уместо тога требало да уради шта'с између следећих витичастих заграда уместо оних изнад.
{
СисГет, Мон2, Монитор, 2; Узмите други монитор'с детаљима
Мон2Видтх := Мон2Ригхт - Мон2Лефт; Израчунајте други монитор'с стварна ширина.
Мон2Хеигхт := Мон2Боттом - Мон2Топ; Израчунајте други монитор'с стварна висина.

ТаргетКс := (Мон2Видтх/2)-(Видтх/2)+А_СцреенВидтх; Израчунајте где да померите прозор. Приметите да додајемо и примарни монитор'с ширина пошто АутоХотКеи може'т померајте прозоре на појединачним мониторима, али преко њихових комбинованих "површине".
ТаргетИ := (Мон2Хеигхт/2)-(Хеигхт/2)+Мон2Топ; Израчунајте оптимални вертикални циљ за померање прозора на другом монитору. Као горе, други монитор'вертикални детаљи се детектују у односу на примарни монитор. Дакле, морамо бити креативни да бисмо добили оптималну мету признајући како други монитор'с врх исн'т једнако 0 (као примарни'с).

ПоситионТоггле = 1; Померите прекидач уназад тако да ако поново користимо интервентни тастер, тхе прозор вратиће се на примарни монитор.
}

ВинМове, %АцтивеВиндовТитле%, %ТаргетКс%, %ТаргетИ%; Стварна радња, померање активног прозор на наше израчунате координате.

повратак

Центрирајте прозор помоћу кључа, једноставан начин

А сада сте готови! Ако све функционише добро, сада можете да користите свој новоподешени интервентни тастер за центрирање прозора у било ком тренутку.

Пронађите где губите време на Виндовс-у помоћу АутоХотКеи-а

Реад Нект

ОбјавиТвеетОбјавиЕмаил

Повезане теме

  • Виндовс
  • Виндовс 10
  • Виндовс 11
  • АутоХоткеи
  • Прилагођавање оперативног система Виндовс

О аутору

Одисеја Коурафалос (Објављено 31 чланака)

ОК-ов прави живот је почео око 10, када је добио свој први рачунар - Цоммодоре 128. Од тада је топио тастере тако што је куцао 24/7, покушавајући да прошири Тхе Ворд Оф Тецх свима који су довољно заинтересовани да слушају. Или, боље речено, прочитајте.

Више од Одиссеас Коурафалос

Претплатите се на наш билтен

Придружите се нашем билтену за техничке савете, рецензије, бесплатне е-књиге и ексклузивне понуде!

Кликните овде да бисте се претплатили