<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; AHK: как сохранять состояние ЭУ "Radio"]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=16030&amp;type=atom" />
	<updated>2021-01-29T20:00:49Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=16030</id>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145618#p145618" />
			<content type="html"><![CDATA[<p>Каждый ЭУ в Вашем примере имеет свой уникальный номер Radio%A_Index%. Поначалу я подумал, что Вы предполагаете сохранять состояние каждого из этих ЭУ. Потом въехал, что достаточно запомнить тот, по которому был произведён щелчок. Под &quot;числом на выходе&quot; я имею в виду число, означающее номер выбранного RadioButton, состояние которого будет сохранёно в файле настроек.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2021-01-29T20:00:49Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145618#p145618</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145617#p145617" />
			<content type="html"><![CDATA[<p>Что за магическое число? Вы специально говорите так, чтобы было не понятно?</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2021-01-29T19:53:28Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145617#p145617</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145616#p145616" />
			<content type="html"><![CDATA[<p>Извиняюсь, был невнимателен.<br /></p><div class="codebox"><pre><code>loop 20
	Gui, Add, Radio, xs+10 yp+20 vRadio%A_Index% gGroup1, Check %A_Index%</code></pre></div><p> - двадцать раз создаются ЭУ с уникальными именами, но число на выходе одно.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2021-01-29T19:49:40Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145616#p145616</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145609#p145609" />
			<content type="html"><![CDATA[<p>А вы можете другими словами, я ничего не понял совсем.<br />Где у меня двадцать чисел. И что там противоречит:<br /></p><div class="quotebox"><blockquote><p>считал одно число и выставил один ЭУ в нужное состояние</p></blockquote></div><p>И где в вашем решении элегантность, если как минимум есть зависимость от ранее добавленных контролов.<br />И где у вас этап сохранения.</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2021-01-29T18:57:47Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145609#p145609</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145606#p145606" />
			<content type="html"><![CDATA[<p><strong>serzh82saratov</strong>, оно, конечно, так заработает, спору нет.<br /></p><div class="quotebox"><cite>ypppu пишет:</cite><blockquote><p>Придётся перебирать состояние каждой радио-точки.</p></blockquote></div><p> Это я говорю про перебор на этапе сохранения и восстановления. Программа загружается, заглядывает в ini-файлик, либо в реестр. В Вашем варианте там вместо одного числа - двадцать чисел. А более элегантное решение - это когда считал одно число и выставил один ЭУ в нужное состояние.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2021-01-29T18:45:00Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145606#p145606</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145600#p145600" />
			<content type="html"><![CDATA[<p>Зачем перебирать, если у них есть имена?<br /></p><div class="codebox"><pre><code>OutputVar := 12

Gui, Add, GroupBox, x10 y10 w150 h500 Section
loop 20
	Gui, Add, Radio, xs+10 yp+20 vRadio%A_Index% gGroup1, Check %A_Index%
GuiControl,, Radio%OutputVar%, 1
Gui, Show
Return
 
Group1: 
	ToolTip %  SaveGroup1 := SubStr(A_GuiControl, 6) 
	Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2021-01-29T18:27:11Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145600#p145600</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145599#p145599" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>serzh82saratov пишет:</cite><blockquote><p>Разве в моём примере у вас можно поставить точку сразу во всех?</p></blockquote></div><p>Нет, только в каком-то одном. Но так скрипт не может просто взять и сохранить состояние ЭУ. Придётся перебирать состояние каждой радио-точки.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2021-01-29T18:26:18Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145599#p145599</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145598#p145598" />
			<content type="html"><![CDATA[<p><strong>ypppu</strong><br /></p><div class="codebox"><pre><code>OutputVar := 12

Gui, Add, GroupBox, x10 y10 w150 h500 Section
loop 20
	Gui, Add, Radio, xs+10 yp+20 vRadio%A_Index%, %A_Index%
GuiControl,, Radio%OutputVar%, 1
Gui, Show</code></pre></div>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2021-01-29T18:21:20Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145598#p145598</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145597#p145597" />
			<content type="html"><![CDATA[<p>Думал только я не умею нормально использовать радио-кнопки.<br />Для себя выбрал метод установки флажков после создания Gui через &#039;HWND&#039;, в виде отдельной метки, которая запускается при завершении создания интерфейса и при смене каких-либо настроек.</p>]]></content>
			<author>
				<name><![CDATA[__Михаил__]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=40928</uri>
			</author>
			<updated>2021-01-29T18:18:50Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145597#p145597</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145596#p145596" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>ypppu пишет:</cite><blockquote><p>все ЭУ radio будут разобщённые</p></blockquote></div><p>Разве в моём примере у вас можно поставить точку сразу во всех?</p>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2021-01-29T18:17:39Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145596#p145596</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145594#p145594" />
			<content type="html"><![CDATA[<p><strong>serzh82saratov</strong>, так проще, но все ЭУ radio будут разобщённые. А требуется, чтобы они были сгруппированы в одно целое. К примеру, их будет 20 штук, и нужно запомнить, в которую поставлена точка для сохранения значения в файл настроек. Чтобы при следующем запуске скрипта восстановить предыдущее состояние.</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2021-01-29T18:10:43Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145594#p145594</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145593#p145593" />
			<content type="html"><![CDATA[<p>Не проще каждому ЭУ назначить переменную, и не зависеть от добавленных до этого Button.<br /></p><div class="codebox"><pre><code>
OutputVar := 2

Gui, Add, GroupBox, x10 y10 w150 h100
Gui, Add, Radio, x30 y40 vRadio1
Gui, Add, Radio, vRadio2
Gui, Add, Radio, vRadio3 
GuiControl,, Radio%OutputVar%, 1
Gui, Show
</code></pre></div>]]></content>
			<author>
				<name><![CDATA[serzh82saratov]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27879</uri>
			</author>
			<updated>2021-01-29T17:57:59Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145593#p145593</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145589#p145589" />
			<content type="html"><![CDATA[<p>Я бы так сделал:<br /></p><div class="codebox"><pre><code>OutputVar := 2

Gui, Add, GroupBox, x10 y10 w150 h100
Gui, Add, Radio, x30 y40 vSpisok gAutoSubmit
Gui, Add, Radio,              gAutoSubmit
Gui, Add, Radio,              gAutoSubmit
OutputVar += 1
GuiControl,, Button%OutputVar%, 1
Gui, Show
AutoSubmit:
Return</code></pre></div>]]></content>
			<author>
				<name><![CDATA[teadrinker]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=24515</uri>
			</author>
			<updated>2021-01-29T16:47:06Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145589#p145589</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[AHK: как сохранять состояние ЭУ "Radio"]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=145587#p145587" />
			<content type="html"><![CDATA[<p>Такой вопрос. Из нескольких ЭУ &quot;Radio&quot; можно сгруппировать один большой, имеющий привязку к одной единственной переменной. А как по уму, сохранить это значения и восстановить состояние ЭУ?<br />Вот, к примеру, я установил точку в 5ом элементе. В переменной появилось число &quot;5&quot;. Я сохраняю это число куда-нибудь в файлик, либо в реестр. Далее я перезапускаю скрипт. И я хочу дать ему понять, в котором шарике ставить точку. Пока что это выглядит так:<br /></p><div class="codebox"><pre><code>If (OutputVar = 1)
a := 1, b := 0, c := 0
If (OutputVar = 2)
a := 0, b := 1, c := 0
If (OutputVar = 3)
a := 0, b := 0, c := 1

Gui, Add, GroupBox, x10 y10 w150 h100
Gui, Add, Radio, x30 y40 vSpisok gAutoSubmit Checked%a%
Gui, Add, Radio, 		 		gAutoSubmit Checked%b%
Gui, Add, Radio, 		 		gAutoSubmit Checked%c%
</code></pre></div><p>То есть приходится перебрать большое количество комбинаций. И чем больше строк в ЭУ, тем больше проверок. Может существует более элегантное решение?</p>]]></content>
			<author>
				<name><![CDATA[ypppu]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=5974</uri>
			</author>
			<updated>2021-01-29T16:33:00Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=145587#p145587</id>
		</entry>
</feed>
