<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: Копирование при зажатой левой клавише мыши]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=7022&amp;type=atom" />
	<updated>2012-03-29T17:11:02Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=7022</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58582#p58582" />
			<content type="html"><![CDATA[<p><strong>creature.ws</strong>, да, пожалуй такая формулировка верней. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /><br /><strong>Kamagi</strong>, у creature.ws в&nbsp; посте #7 всё присутствует в полном объеме: <br /></p><div class="codebox"><pre><code>If (abs(x0-x1) &lt; 4 &amp;&amp; abs(y0-y1) &lt; 4)</code></pre></div><p>что является более &quot;политкорректным&quot;, т.к. учитывает незначительные случайные сдвиги мыши (в пределах 4 пикселей)</p>]]></content>
			<author>
				<name><![CDATA[Irbis]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27384</uri>
			</author>
			<updated>2012-03-29T17:11:02Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58582#p58582</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58563#p58563" />
			<content type="html"><![CDATA[<p>alexii, <br />ооо, извиняюсь, был невнимателен, спасибо за <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p><p>На средней клавише у меня висит закрытие окон/вкладок, так что мне больше по душе вариант с зажатой ЛКМ. Хорошая мысль - ориентироваться на форму курсора. Я за минимизацию клавиатурных хоткеев в повседневном использовании, поскольку левой рукой либо ем, либо пью, либо подпираю голову <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" /></p><p>Вот мой обновленный код, но мне нужна помощь с синтаксисом - в условии IF в LOOP я хочу, чтобы он проверял и по X, и по Y, но как это правильно написать не знаю, ввожу второе условие и скрипт не работает. </p><div class="codebox"><pre><code>~LButton::

If (A_Cursor &lt;&gt; &quot;IBeam&quot;)
    return

KeyWait, Lbutton, U T.5
if errorlevel = 1
    {
    Label1:
    ControlGetFocus, control, A
    SendMessage, 0x301, , , %control% , A
    ToolTip, Copy
    KeyWait, Lbutton, U T.5
        if errorlevel = 1
        {
        x3 = 
        y3 = 

        loop
            {
            MouseGetPos, x4, y4
            if y3 = y4 ; ??? - как вписать сюда второе условие по Х?
                Break
            x3 = x4
            y3 = y4
            Sleep, 600
            }
        Goto, Label1
        }
    }
ToolTip
Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Kamagi]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27024</uri>
			</author>
			<updated>2012-03-29T14:53:24Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58563#p58563</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58562#p58562" />
			<content type="html"><![CDATA[<p>Не фейл, а «несоответствие ожиданиям». Вариант из сообщения #7 копирует при выделении.</p>]]></content>
			<author>
				<name><![CDATA[creature.ws]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26105</uri>
			</author>
			<updated>2012-03-29T14:49:32Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58562#p58562</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58558#p58558" />
			<content type="html"><![CDATA[<p>Интересный вариант. Жаль, что при полевых испытаниях случился фейл <img src="//forum.script-coding.com/img/smilies/neutral.png" width="15" height="15" /><br />Выделяем мышкой, вставляем в нужное место - работает.<br />Далее. Довольно частая операция - заменить выделенный текст фрагментом из буфера обмена:<br />Скопировать текст (выделяем мышкой - отлично), выделяем (конечно, мышкой!) заменяемый текст... В общем, <strong>что</strong> при этом происходит, понятно.<br />Немного модифицированный вариант, учитывающий данную особенность:</p><div class="codebox"><pre><code>~LButton::
    If (A_Cursor &lt;&gt; &quot;IBeam&quot; || A_ThisHotkey == A_PriorHotkey &amp;&amp; A_TimeSincePriorHotkey &lt; 90)
       return
    MouseGetPos, x0, y0, class0, classNN0
    KeyWait, LButton
    If (A_TimeSinceThisHotkey &lt; 100 || A_Cursor &lt;&gt; &quot;IBeam&quot;)
       return
    MouseGetPos, x1, y1, class1, classNN1
    If (class1 &lt;&gt; class0 || classNN1 &lt;&gt; classNN0 || abs(x0-x1) &lt; 4 &amp;&amp; abs(y0-y1) &lt; 4)
       return
^Ins::
^vk43::
   a := Clipboard
   SendInput ^{Ins}
return

+Ins::
^vk56::
   b := Clipboard
   Clipboard =
   SendInput ^{Ins}
   Clipboard := Clipboard==b ? a : b
   SendInput +{Ins}
return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Irbis]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27384</uri>
			</author>
			<updated>2012-03-29T13:59:57Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58558#p58558</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58543#p58543" />
			<content type="html"><![CDATA[<p>Наверно дело таки в привычке, а не размере мыши <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p><p>(Тоже не получается комфортно нажимать mbutton средним пальцем даже на x7)<br />Вариант :<br /></p><div class="codebox"><pre><code>~LButton::
    If (A_Cursor &lt;&gt; &quot;IBeam&quot; || A_ThisHotkey == A_PriorHotkey &amp;&amp; A_TimeSincePriorHotkey &lt; 90)
        return
    MouseGetPos, x0, y0, class0, classNN0
    KeyWait, LButton
    If (A_TimeSinceThisHotkey &lt; 200 || A_Cursor &lt;&gt; &quot;IBeam&quot;)
        return
    MouseGetPos, x1, y1, class1, classNN1
    If (class1 &lt;&gt; class0 || classNN1 &lt;&gt; classNN0 || abs(x0-x1) &lt; 4 &amp;&amp; abs(y0-y1) &lt; 4)
        return
    SendInput ^{Insert}
    SoundPlay *64
    return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[creature.ws]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26105</uri>
			</author>
			<updated>2012-03-29T08:33:36Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58543#p58543</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58540#p58540" />
			<content type="html"><![CDATA[<p><strong>Grey</strong>, исправил.<br /><strong>YMP</strong>, возможно, и предложенный мной вариант имеет право на жизнь, с обычной A4 X7 это не представляет сложностей.<br />Хотя твой вариант интересен, пожалуй, надо &quot;допилить&quot; его под себя с учетом твоих примечаний и добавить в свой скрипт, сидящий в автозагрузке. <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></content>
			<author>
				<name><![CDATA[Irbis]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27384</uri>
			</author>
			<updated>2012-03-29T08:21:57Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58540#p58540</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58537#p58537" />
			<content type="html"><![CDATA[<p><strong>2 Irbis</strong> Для клавиш мыши, префикс $ не требуется.</p>]]></content>
			<author>
				<name><![CDATA[Grey]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=25792</uri>
			</author>
			<updated>2012-03-29T07:43:51Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58537#p58537</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58536#p58536" />
			<content type="html"><![CDATA[<p>Можно всё на среднюю кнопку повесить: <a href="http://forum.script-coding.com/viewtopic.php?id=237">AutoHotkey: Копирование/вырезание/вставка текста средней кнопкой мыши</a>.</p><div class="quotebox"><cite>Irbis пишет:</cite><blockquote><p>Довольно просто выделить текст ЛКМ, и, не отпуская ее, нажать среднюю кнопку мыши.</p></blockquote></div><p>Мне, кстати, это сложно проделать. То ли мышь маленькая, то ли средний палец плохо гнётся.</p>]]></content>
			<author>
				<name><![CDATA[YMP]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=81</uri>
			</author>
			<updated>2012-03-29T07:11:36Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58536#p58536</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58535#p58535" />
			<content type="html"><![CDATA[<p>Довольно просто выделить текст ЛКМ, и, не отпуская ее, нажать среднюю кнопку мыши.<br />Никаких &quot;холостых&quot;циклов; плюс еще в том, что никакой случайный текст не сотрет содержимое буфера обмена, если нет такой цели.<br /></p><div class="codebox"><pre><code>MButton::
  if GetKeyState(&quot;LButton&quot;, &quot;P&quot;)
    Send ^{vk43}
  else
    Click M
return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Irbis]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27384</uri>
			</author>
			<updated>2012-03-29T06:58:01Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58535#p58535</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58532#p58532" />
			<content type="html"><![CDATA[<p><span style="color: Green"><strong>Kamagi</strong>, заголовку темы не хватало префикса. Я добавил.</span></p>]]></content>
			<author>
				<name><![CDATA[alexii]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=1844</uri>
			</author>
			<updated>2012-03-29T02:26:12Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58532#p58532</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: Копирование при зажатой левой клавише мыши]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=58525#p58525" />
			<content type="html"><![CDATA[<p><strong>Идея скрипта</strong> - копировать текст при выделении, если на некоторое время остается зажатой левая клавиша мыши. Написал тестовый вариант.</p><p><strong>Подробное описание</strong> - при двойном клике и последующем зажатии копирует текст в буфер обмена и под мышкой вылезает тултип &quot;copy&quot;, изчезающий как только ЛКМ отпускается. При одиночном зажатии клавиши и выделении текста копирует его в буфер, причем проверяет, отпущена ли клавиша и если нет, то следит, двигается ли мышь и если двигается, продолжает копировать текст до отпускания ЛКМ. Т.е. если выделить часть текста, затем не отпуская клавишу еще выделить, то он скопирует именно выделенную часть текста. </p><p><strong>Недостатки</strong> - скрипт работает в холостую - если просто где-нибудь зажать клавишу, он работает. Было бы здорово, если бы он определял текст и работал только с ним. </p><div class="codebox"><pre><code>~LButton::

x1 =
y1 =

loop
    {
    MouseGetPos, x2, y2
    Sleep, 200
    if (x1 = %x2% and y1 = %y2%)
        Break
    x1 = %x2%
    y1 = %y2%
    }

KeyWait, Lbutton, U T.5
if errorlevel = 1
    {
    Label1:
    ControlGetFocus, control, A
    SendMessage, 0x301, , , %control%, A
    ToolTip, Copy
    KeyWait, Lbutton, U T.5
    if errorlevel = 1
        {
        x3 =
        y3 =

        loop
            {
            MouseGetPos, x4, y4
            Sleep, 200
            if (y3 = %y4% and x3 = %x4%)
                Break
            x3 = %x4%
            y3 = %y4%
            }
        Goto, Label1
        }
    Else
        {
        ToolTip
        Exit
        }
    }
Exit

Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[Kamagi]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27024</uri>
			</author>
			<updated>2012-03-28T20:26:49Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=58525#p58525</id>
		</entry>
</feed>
