<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
	<title type="html"><![CDATA[Серый форум &mdash; HTA Свернуть, развернуть окно и F5]]></title>
	<link rel="self" href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=5927&amp;type=atom" />
	<updated>2011-08-06T07:48:52Z</updated>
	<generator>PunBB</generator>
	<id>https://forum.script-coding.com/viewtopic.php?id=5927</id>
		<entry>
			<title type="html"><![CDATA[Re: HTA Свернуть, развернуть окно и F5]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=50424#p50424" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>Любитель пишет:</cite><blockquote><p>спасибо, но всё работает.</p></blockquote></div><p>Как я понял, ты просто отключил обновление и тебя это устраивает.<br />Но общая проблема, описанная тобой в первом сообщении этой темы от этого не исчезла.<br /></p><div class="quotebox"><cite>Любитель пишет:</cite><blockquote><p>Непонятно, о чём это?</p></blockquote></div><p>Возможно, что это зависит от технических характеристик монитора, его настроек, быстродействия процессора.<br />Лично у меня при использовании обычного </p><div class="codebox"><pre><code>&lt;HTA:APPLICATION icon=&#039;explorer.exe&#039;/&gt;&quot;</code></pre></div><p>вместо предложенного </p><div class="codebox"><pre><code>&lt;SCRIPT language=&#039;JavaScript&#039;&gt;
if (document.cookie.indexOf(&quot;HTA=1&quot;)&lt;0) {
    //проверка на наличие куки довольно упрощённая - лишь для примера
  document.write(&quot;&lt;HTA:APPLICATION icon=&#039;explorer.exe&#039;/&gt;&quot;);
  document.cookie=&quot;HTA=1&quot;;
}
&lt;/SCRIPT&gt;</code></pre></div><p>факт обновления окна гораздо заметние, причем не только его содержимого, но перерисовываются и его внешние элементы оформления.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2011-08-06T07:48:52Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=50424#p50424</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA Свернуть, развернуть окно и F5]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=50422#p50422" />
			<content type="html"><![CDATA[<p><strong>wisgest</strong>, спасибо, но всё работает.</p><p>Возможно в следующий раз попробую использовать данные рекомендации.</p><br /><div class="quotebox"><blockquote><p>Кстати, ещё один положительный эффект — исчезло моргание окна при его обновлении.</p></blockquote></div><p>Непонятно, о чём это?</p>]]></content>
			<author>
				<name><![CDATA[Любитель]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27037</uri>
			</author>
			<updated>2011-08-06T05:04:20Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=50422#p50422</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA Свернуть, развернуть окно и F5]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=50413#p50413" />
			<content type="html"><![CDATA[<div class="quotebox"><cite>wisgest пишет:</cite><blockquote><p>(Возможное затруднение — если окажется установлена не сеансовая, а дисковая кука с тем же именем; но это не существенно, просто надо подобрать более длинное имя.)</p></blockquote></div><p>Кстати, можно обойтись и без кук, учитывая, что свойство <em>window.name</em> доступно для записи и сохраняет значение при обновлении окна.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2011-08-05T15:07:23Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=50413#p50413</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA Свернуть, развернуть окно и F5]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=50412#p50412" />
			<content type="html"><![CDATA[<p>Если в HTA нет элемента <strong>HTA:APPLICATION</strong>, то его окно ведёт себя как положено: будучи развёрнутым на весь экран, а затем обновлённым, сохраняет возможность восстановления прежнего размера.</p><p>Если же элемент <strong>HTA:APPLICATION</strong> есть, то при обновлении происходит его повторное применение: если в нем указано <strong>windowState=normal</strong> (а если явно и не указано, то подразумевается по умолчанию), то окно сохраняет текущие размеры, но считается неразвёрнутым.<br />Строго говоря подобное происходит, при всяком обновлении элемента <strong>HTA:APPLICATION</strong>, например, при переходе по ссылке, или изъятии этого элемента и повторной вставке для изменения каких-либо задаваемых им свойств, например значка окна — при этом все свойства применяются заново (а те, которые явно не заданы, принимают значения по умолчанию; за исключением <strong>navigable</strong>, которое без явного переопределения сохраняет предыдущее значение).</p><p>Возможное решение: при открытии приложения проверять какую-либо сеансовую куку: если она не установлена — установить и вставить элемент <strong>HTA:APPLICATION</strong>, например с помощью <em>document.write()</em>; если установлена — нечего не делать.<br />(Возможное затруднение — если окажется установлена не сеансовая, а дисковая кука с тем же именем; но это не существенно, просто надо подобрать более длинное имя.)<br /></p><div class="codebox"><pre><code>&lt;HTML&gt;
&lt;HEAD&gt;&lt;TITLE&gt;HTA:APPLICATION и обновление окна&lt;/TITLE&gt;
&lt;SCRIPT language=&#039;JavaScript&#039;&gt;
if (document.cookie.indexOf(&quot;HTA=1&quot;)&lt;0) {
    //проверка на наличие куки довольно упрощённая - лишь для примера
  document.write(&quot;&lt;HTA:APPLICATION icon=&#039;explorer.exe&#039;/&gt;&quot;);
  document.cookie=&quot;HTA=1&quot;;
}
&lt;/SCRIPT&gt;
&lt;/HEAD&gt;
&lt;BODY&gt;
&lt;P&gt;Разверните окно, нажмите F5, а затем попробуйте его восстановить.&lt;/P&gt;
&lt;/BODY&gt;&lt;/HTML&gt;</code></pre></div><p>Кстати, ещё один положительный эффект — исчезло моргание окна при его обновлении.</p><p>К сожалению, это решение не подходит для случая принудительного изменения свойств HTA:APPLICATION (например, для смены значка окна). Полноценное решение было бы возможно, если можно было бы узнать не только размеры, но и текущее состояние окна или отследить его переключение; но как это сделать я не догадываюсь.</p>]]></content>
			<author>
				<name><![CDATA[wisgest]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=3850</uri>
			</author>
			<updated>2011-08-05T14:30:30Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=50412#p50412</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA Свернуть, развернуть окно и F5]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=49358#p49358" />
			<content type="html"><![CDATA[<p>Ещё раз спасибо, получилось.<br />Только не понятно, почему работает только если всё написано в боди?<br />Пытался положить в функцию, не получилось.</p>]]></content>
			<author>
				<name><![CDATA[Любитель]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27037</uri>
			</author>
			<updated>2011-06-23T17:11:26Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=49358#p49358</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA Свернуть, развернуть окно и F5]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=49316#p49316" />
			<content type="html"><![CDATA[<p>DnsIs, спасибо, вполне возможно, что происходит запоминание, вот только у меня язык не поворачивается назвать это разумным.<br />Код обязательно попробую, мне это актуально.</p><p>P.S.<br />Сейчас идея осенила, надо в осле это попробовать.</p>]]></content>
			<author>
				<name><![CDATA[Любитель]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27037</uri>
			</author>
			<updated>2011-06-22T15:45:32Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=49316#p49316</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[Re: HTA Свернуть, развернуть окно и F5]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=49302#p49302" />
			<content type="html"><![CDATA[<p>Я думаю что это не баг. Я вас правильно понял, вы говорите про кнопку &quot;Свернуть в окно/развернуть&quot;, а не про &quot;Свернуть/развернуть&quot;?</p><p>Пусть у нас открывается HTA окно, с размером 300х200 пикселей а разрешение экрана например 1280х1024<br />При нажатии &quot;Свернуть/Развернуть&quot; будет происходить переключение окна между 300х200 &lt;-&gt; 1280х1024 (на самом деле не 1280х1024, а меньше, но не суть). Причем в при развернутом окне, его не переместить за заголовок, ни изменить размер взяв за угол окна, нельзя, а при 300х200 можно делать с окном все что хочешь.</p><p>При нажатии F5 в полноэкранном режиме происходит обновление не только содержимого, но и видимо, запомненных размеров не развернутого окна. Кнопка, как вы заметили не блокируется, а продолжает работать, но уже не между 300х200 &lt;-&gt; 1280х1024, а между 1280х1024 &lt;-&gt; 1280х1024. Вот собственно и все.<br />Нужно просто в свернутом в окно режиме (когда на кнопке 1 окно а не 2), изменить режим окна вручную, потянув за край и все будет работать по-прежнему.</p><p>Как вариант, можно вообще отключить обновление:<br /></p><div class="codebox"><pre><code>&lt;body onKeyDown=&quot;if(event.keyCode==116){return false;};&quot;&gt;</code></pre></div><p>или например при обновлении менять размер окна</p><div class="codebox"><pre><code>&lt;body onKeyDown=&quot;if(event.keyCode==116){window.resizeTo(300,200)};&quot;&gt;</code></pre></div><p>В общем все зависит от того, что на самом деле нужно.</p>]]></content>
			<author>
				<name><![CDATA[DnsIs]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=26282</uri>
			</author>
			<updated>2011-06-22T04:06:51Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=49302#p49302</id>
		</entry>
		<entry>
			<title type="html"><![CDATA[HTA Свернуть, развернуть окно и F5]]></title>
			<link rel="alternate" href="https://forum.script-coding.com/viewtopic.php?pid=49283#p49283" />
			<content type="html"><![CDATA[<p>Если нажать F5 при полностью раскрытом окне, то перестаёт работать стандартная кнопка Свернуть/Развернуть окно. Если F5 не трогать, то всё работает.<br />Что это?, очередной сюрприз ИЕ. Можно обойти?</p>]]></content>
			<author>
				<name><![CDATA[Любитель]]></name>
				<uri>https://forum.script-coding.com/profile.php?id=27037</uri>
			</author>
			<updated>2011-06-21T11:25:15Z</updated>
			<id>https://forum.script-coding.com/viewtopic.php?pid=49283#p49283</id>
		</entry>
</feed>
