<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; AHK: Регулятор громкости в windows 7]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=5915</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5915&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «AHK: Регулятор громкости в windows 7».]]></description>
		<lastBuildDate>Mon, 20 Dec 2021 20:28:23 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151337#p151337</link>
			<description><![CDATA[<p>Такой способ передачи координат для программистов привычен, он часто используется в winapi, например:<br /></p><div class="codebox"><pre><code>DllCall(&quot;GetCursorPos&quot;, &quot;Int64P&quot;, POINT)
MsgBox, % &quot;x: &quot; . POINT &amp; 0xFFFFFFFF . &quot;`n&quot;
        . &quot;y: &quot; . POINT &gt;&gt; 32</code></pre></div><p>Только тут Y сдвигается не на 16 бит, а на 32.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 20 Dec 2021 20:28:23 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151337#p151337</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151336#p151336</link>
			<description><![CDATA[<p>Мне не ясна полная картина устройства системы, поэтому я бы наверно использовал отдельные переменные X, Y, а не соединял их в одну.</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Mon, 20 Dec 2021 19:55:40 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151336#p151336</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151335#p151335</link>
			<description><![CDATA[<p>И как это должно было бы быть?</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 20 Dec 2021 19:43:34 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151335#p151335</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151334#p151334</link>
			<description><![CDATA[<p>Тем не менее, не очень удобно как по мне. Нет чтобы в процентном отношении тогда сделать.</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Mon, 20 Dec 2021 19:42:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151334#p151334</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151333#p151333</link>
			<description><![CDATA[<p>Нет, эта тема не имеет отношения к данному случаю. Если бы координаты были относительными, во-первых и X тоже нужно было бы преобразовывать. Во-вторых, чтобы преобразовать абсолютные в относительные, недостаточно просто умножить абсолютную координату на 65536, как вы можете видеть в той теме:<br /></p><div class="codebox"><pre><code>X := X*65535/A_ScreenWidth
Y := Y*65535/A_ScreenHeight</code></pre></div><p>В данном же случае мы просто сдвигаем Y на 16 бит (или на два байта) влево, так программа и считывает эту координату.<br />Поэтому правильнее будет выглядеть вариант<br /></p><div class="codebox"><pre><code>x|y &lt;&lt; 16</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 20 Dec 2021 19:40:38 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151333#p151333</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151328#p151328</link>
			<description><![CDATA[<p>Ещё <a href="http://forum.script-coding.com/viewtopic.php?pid=147997#p147997">в этой теме</a> выяснилось, как не так?<br />Вот тут <a href="https://docs.microsoft.com/en-us/windows/win32/api/winuser/nf-winuser-mouse_event">это написано</a>.<br /></p><div class="quotebox"><blockquote><p>Информация указывается в виде абсолютных или относительных целочисленных значений.</p></blockquote></div><div class="quotebox"><blockquote><p>Если указано значение MOUSEEVENTF_ABSOLUTE , dx и dy содержат нормализованные абсолютные координаты от 0 до 65 535. Процедура события отображает эти координаты на поверхность дисплея. Координата (0,0) отображается в верхнем левом углу поверхности дисплея, (65535,65535) отображается в правом нижнем углу.</p></blockquote></div>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Mon, 20 Dec 2021 18:34:58 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151328#p151328</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151323#p151323</link>
			<description><![CDATA[<p>Нет, виртуальный монитор не имеет к этому отношения, используются координаты в пикселях.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Mon, 20 Dec 2021 17:05:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151323#p151323</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151320#p151320</link>
			<description><![CDATA[<p>65536 = 10000 в 16-й системе исчисления.<br />В виндовсе виртуальный монитор размером 10к на 10к пикселей, независимо от реального.</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Mon, 20 Dec 2021 15:52:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151320#p151320</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151319#p151319</link>
			<description><![CDATA[<p><strong>teadrinker</strong><br />Да, вы правы, но привели не ту цитату из справки. В ней говорится, что функция не всегда возвращает значение. Вот правильная цитата:</p><div class="quotebox"><blockquote><p>Return, Exit, and General Remarks</p><p>If the flow of execution within a function <strong>reaches the function&#039;s closing brace</strong> prior to encountering a Return, the function ends and returns a blank value (empty string) to its caller. A blank value is also returned whenever the function explicitly omits Return&#039;s parameter.</p></blockquote></div><p>В ней говорится, что закрывающая скобка может заменять пустой Return. Потому и компилятор не ругается.</p><div class="quotebox"><blockquote><p>почему там y умножалось на 65536? Почему не на 65537?</p></blockquote></div><p>Потому, что это &quot;2&quot; в какой-то степени, но зачем этот оверинжиниринг.</p>]]></description>
			<author><![CDATA[null@example.com (stuermer)]]></author>
			<pubDate>Mon, 20 Dec 2021 11:11:42 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151319#p151319</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151311#p151311</link>
			<description><![CDATA[<p>Если Return нет, подразумевается, что функция возвращает пустое значение. Если заглянете в <a href="https://www.autohotkey.com/docs/Functions.htm">справку</a>, увидите примеры функций без Return.<br /></p><div class="quotebox"><cite>справка пишет:</cite><blockquote><p>a function may <em>optionally</em> return a value to its caller</p></blockquote></div><p>Если понимаете предыдущий вариант, можете сказать, почему там <em>y</em> умножалось на 65536? Почему не на 65537?</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Sun, 19 Dec 2021 19:38:25 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151311#p151311</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151310#p151310</link>
			<description><![CDATA[<p>Очень интересно, раз функция обязана возвращать что-то, тогда почему AHK не ругается на синтаксическую ошибку?</p>]]></description>
			<author><![CDATA[null@example.com (__Михаил__)]]></author>
			<pubDate>Sun, 19 Dec 2021 19:35:03 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151310#p151310</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151307#p151307</link>
			<description><![CDATA[<p><strong>teadrinker</strong><br />Это уже вопрос реторический, что правильно это по-непонятному.<br />Функция должна что-то возвращать по определению, поэтому грамотней написать просто Return без значения.</p>]]></description>
			<author><![CDATA[null@example.com (stuermer)]]></author>
			<pubDate>Sun, 19 Dec 2021 18:41:14 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151307#p151307</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151306#p151306</link>
			<description><![CDATA[<div class="quotebox"><cite>stuermer пишет:</cite><blockquote><p>Проще и понятнее, как было</p></blockquote></div><p>Не очень понял, что имеете в виду. Я показываю, как правильно. Return в функции использовать не обязательно.</p>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Sun, 19 Dec 2021 17:38:16 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151306#p151306</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151305#p151305</link>
			<description><![CDATA[<p><strong>teadrinker</strong><br />Проще и понятнее, как было. Только оба примера без Return в функции почему-то.</p>]]></description>
			<author><![CDATA[null@example.com (stuermer)]]></author>
			<pubDate>Sun, 19 Dec 2021 17:15:47 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151305#p151305</guid>
		</item>
		<item>
			<title><![CDATA[Re: AHK: Регулятор громкости в windows 7]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=151302#p151302</link>
			<description><![CDATA[<p>Проще и правильнее так:<br /></p><div class="codebox"><pre><code>F2:: ChangeVolume(A_ScreenWidth-150, A_ScreenHeight)

ChangeVolume(x,y){
   Run, % &quot;SndVol.exe -f &quot; . x|y &lt;&lt; 16
}</code></pre></div>]]></description>
			<author><![CDATA[null@example.com (teadrinker)]]></author>
			<pubDate>Sun, 19 Dec 2021 14:58:10 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=151302#p151302</guid>
		</item>
	</channel>
</rss>
