<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AutoHotkey: Начинающему разработчику - Печатаю виртуальными кодами]]></title>
		<link>http://forum.script-coding.com/viewtopic.php?id=1092</link>
		<atom:link href="http://forum.script-coding.com/extern.php?action=feed&amp;tid=1092&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AutoHotkey: Начинающему разработчику - Печатаю виртуальными кодами».]]></description>
		<lastBuildDate>Tue, 05 Feb 2008 13:08:44 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AutoHotkey: Начинающему разработчику - Печатаю виртуальными кодами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=8684#p8684</link>
			<description><![CDATA[<p>Скрипт для наблюдения - отображает информацию о нажатых клавишах в правом верхнем углу экрана и позволяет скопировать эту информацию в буфер. После запуска скрипта включение и выключение режима наблюдения осуществляется с помощью PrintScreen.<br /></p><div class="codebox"><pre><code>#NoEnv 
Process Priority,,High 
SetBatchLines -1 

#InstallKeybdHook 
SetKeyDelay 0,0 
#KeyHistory 25      
Width  = 400         
Height = 550        
TopCut = 280     

PrintScreen:: 
   shown := !shown 
   If (!shown) { 
      SetTimer RThistory, OFF 
      WinHide ahk_id %KHID% 
      Return 
   } 
   KeyHistory 
   WinGet KHID, ID, %A_ScriptFullPath% - AutoHotkey v 
   WinSet AlwaysOnTop, ON, ahk_id %KHID% 
   WinSet ExStyle,-0x80, ahk_id %KHID% ; removes window from the alt-tab list 
   WinSet Region,% &quot;W&quot; Width &quot; H&quot; Height &quot; 4-&quot; TopCut, ahk_id %KHID% 
   WinMove ahk_id %KHID%,,% A_ScreenWidth-Width, -TopCut 
   SetTimer RThistory, 500 
Return 

RThistory: 
   WinGet ID, ID, A                   
   ControlSend,,{F5}, ahk_id %KHID%  
   WinActivate ahk_id %ID%           
Return</code></pre></div><p>Благодарность за публикацию - <strong>Softoed</strong>.</p>]]></description>
			<author><![CDATA[null@example.com (The gray Cardinal)]]></author>
			<pubDate>Tue, 05 Feb 2008 13:08:44 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=8684#p8684</guid>
		</item>
		<item>
			<title><![CDATA[Re: AutoHotkey: Начинающему разработчику - Печатаю виртуальными кодами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=8433#p8433</link>
			<description><![CDATA[<p>Пара примеров использования виртуальных кодов.<br /></p><div class="codebox"><pre><code>vk59:: Send, {vk53}  ; Нажатие на Y посылает нажатие и отпускание S.
                     ; Обратите внимание на фигурные скобки.

+^vk51::             ; Shift-Ctrl-Q
  Send, {vk57 Down}  ; Нажатие W.
  Sleep, 1000
  Send, {vk57 Up}    ; Отпускание W.
Return

F11:: Send, ^{vk43}  ; Посылается комбинация Ctrl-C.

vk45::vk52           ; Переназначение (remapping) клавиш E и R.</code></pre></div><p>Если нажатия посылаются в какое-то текстовое поле, то появляющаяся там при этом буква будет зависеть от языка, на который переключено окно, - точно так же, как при реальном нажатии на клавишу. Если же надо послать именно букву, скажем, вставить в текстовый редактор русскую букву Ы, независимо от языка окна редактора, то букву и нужно посылать, а не виртуальный код.<br /></p><div class="codebox"><pre><code>vk59:: Send, Ы  ; Нажатие на Y посылает букву Ы.</code></pre></div><p>И ещё маленький совет из собственного опыта - всегда помечать в комментариях, какой клавише соответствует использованный код.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Mon, 28 Jan 2008 05:30:10 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=8433#p8433</guid>
		</item>
		<item>
			<title><![CDATA[AutoHotkey: Начинающему разработчику - Печатаю виртуальными кодами]]></title>
			<link>http://forum.script-coding.com/viewtopic.php?pid=8432#p8432</link>
			<description><![CDATA[<p>Использование виртуальных кодов вместо имён рекомендуется для тех клавиш, имена которых меняются при смене раскладки клавиатуры (языка ввода). Это все буквенные клавиши. На русском они обозначаются одной буквой, на английском - уже другой, а виртуальный код всегда один и тот же.</p><p>Автор примера - <strong>F1-12</strong>. Дальше авторский текст.</p><p>--------------------------------------------------------</p><p>В помощь начинающему разработчику: <strong>Печатаю сразу виртуальными кодами</strong></p><p>Мне помогает в моих ежедневных экспериментах следующий простенький скрипт. Надеюсь, поможет и вам:<br /></p><div class="codebox"><pre><code>$Esc Up:: Send, {Esc}
Esc &amp; vk30:: Send, vk30
Esc &amp; vk31:: Send, vk31
Esc &amp; vk32:: Send, vk32
Esc &amp; vk33:: Send, vk33
Esc &amp; vk34:: Send, vk34
Esc &amp; vk35:: Send, vk35
Esc &amp; vk36:: Send, vk36
Esc &amp; vk37:: Send, vk37
Esc &amp; vk38:: Send, vk38
Esc &amp; vk39:: Send, vk39
Esc &amp; vk41:: Send, vk41
Esc &amp; vk42:: Send, vk42
Esc &amp; vk43:: Send, vk43
Esc &amp; vk44:: Send, vk44
Esc &amp; vk45:: Send, vk45
Esc &amp; vk46:: Send, vk46
Esc &amp; vk47:: Send, vk47
Esc &amp; vk48:: Send, vk48
Esc &amp; vk49:: Send, vk49
Esc &amp; vk4A:: Send, vk4A
Esc &amp; vk4B:: Send, vk4B
Esc &amp; vk4C:: Send, vk4C
Esc &amp; vk4D:: Send, vk4D
Esc &amp; vk4E:: Send, vk4E
Esc &amp; vk4F:: Send, vk4F
Esc &amp; vk50:: Send, vk50
Esc &amp; vk51:: Send, vk51
Esc &amp; vk52:: Send, vk52
Esc &amp; vk53:: Send, vk53
Esc &amp; vk54:: Send, vk54
Esc &amp; vk55:: Send, vk55
Esc &amp; vk56:: Send, vk56
Esc &amp; vk57:: Send, vk57
Esc &amp; vk58:: Send, vk58
Esc &amp; vk59:: Send, vk59
Esc &amp; vk5A:: Send, vk5A
Esc &amp; vkBA:: Send, vkBA
Esc &amp; vkBB:: Send, vkBB
Esc &amp; vkBC:: Send, vkBC
Esc &amp; vkBD:: Send, vkBD
Esc &amp; vkBE:: Send, vkBE
Esc &amp; vkBF:: Send, vkBF
Esc &amp; vkC0:: Send, vkC0
Esc &amp; vkDB:: Send, vkDB
Esc &amp; vkDC:: Send, vkDC
Esc &amp; vkDD:: Send, vkDD
Esc &amp; vkDE:: Send, vkDE
Esc &amp; vkDF:: Send, vkDF
Esc &amp; vkE2:: Send, vkE2</code></pre></div><p>Т.е. чтобы получить виртуальный код клавиши (притом в том виде,&nbsp; с которым работает AHK), следует всего лишь, удерживая ESC, нажать на нужную клавишу.</p><p>Сделан только для &quot;букв&quot;, поскольку &quot;буквенные&quot; клавиши - самая стабильная часть клавиатуры и поэтому их целесообразно и достаточно задавать через виртуальный код.</p>]]></description>
			<author><![CDATA[null@example.com (YMP)]]></author>
			<pubDate>Mon, 28 Jan 2008 05:27:36 +0000</pubDate>
			<guid>http://forum.script-coding.com/viewtopic.php?pid=8432#p8432</guid>
		</item>
	</channel>
</rss>
