<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Linux Forum &mdash; Erasing in Qt]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=16467</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=16467&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «Erasing in Qt».]]></description>
		<lastBuildDate>Tue, 13 Sep 2011 18:22:06 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: Erasing in Qt]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=211713#p211713</link>
			<description><![CDATA[<p>Наверное, вы правы и с фреймами было бы проще, но я ими никода не пользовался.<br />Сначала я пытался рисовать в QPixmap и уже его выводить на this, но там это явление<br />и обнаружилось. Идеологически я не знаю, что правильнее. Фреймы - это дополнительная<br />сущность, но вообще я первоначально тоже предполагал иметь несколько объектов<br />QPixmap и выводить то, который нужен, но и с одним не получилось.</p><p>Пётр.</p>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Tue, 13 Sep 2011 18:22:06 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=211713#p211713</guid>
		</item>
		<item>
			<title><![CDATA[Re: Erasing in Qt]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=211697#p211697</link>
			<description><![CDATA[<p>Ну я сказал &quot;сложно&quot; сокрее не в том плане, что это слоность. Скорее это как-то неправильно: есть стандартные методы, а вы пользуетесь обходными путями.<br />Раз вам нужны все эти виджеты все время работы программы, я б сделал фреймы. Достатчно скрыть/показать один объект, и вместе с ним будут скрываться/отображаться все содержащиеся&nbsp; на нем виджеты, что удобно в последующем, когда захотите добавить что либо.</p><br /><p>В прочем все это имхо.</p>]]></description>
			<author><![CDATA[null@example.com (voral)]]></author>
			<pubDate>Tue, 13 Sep 2011 17:23:52 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=211697#p211697</guid>
		</item>
		<item>
			<title><![CDATA[Re: Erasing in Qt]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=211693#p211693</link>
			<description><![CDATA[<p>Я не считаю, что это сложно - подключить к this или отключить.<br />При подключении - да, в paintEvent() я вызываю show().<br />Т.е. в моём случе в слоте, подключённом к пукту меню, для ненужных виджетов<br />вызываются setParent(0), затем this-&gt;update(), потом для нужных виджетов<br />setParent(this), потом устaнавливается параметр для paintEvent(), в зависимости<br />от которого там рисуется то или иное и флаг для paintЕvent(), при котором она<br />делает перерисовку, а затем сбрасывает его.</p><p>Пётр.</p>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Tue, 13 Sep 2011 17:11:50 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=211693#p211693</guid>
		</item>
		<item>
			<title><![CDATA[Re: Erasing in Qt]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=211449#p211449</link>
			<description><![CDATA[<p>Ужас. Както все сложно. Хотите - выделите минимально работающий пример из вашего проекта и передайте мне - я гляну. Но как то со слов все очень непонятно и через тернии.</p><p>1. У наследников QWidget есть метод setVisible(bool) - если вам они еще могут пришодиться<br />2. Если хотите освободить память deleteLater() или delete &lt;Имя_Объекта&gt; .....<br />3. А есть классы для создания например фреймов QFrame</p>]]></description>
			<author><![CDATA[null@example.com (voral)]]></author>
			<pubDate>Mon, 12 Sep 2011 21:01:50 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=211449#p211449</guid>
		</item>
		<item>
			<title><![CDATA[Re: Erasing in Qt]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=211338#p211338</link>
			<description><![CDATA[<p>Это виджеты, например, QComboBox и другие. Я уже нашёл, как добиться чистой<br />перерисовки экрана с другими элементами. Для этого, прежде чем paintEvent(),<br />будет его заполнять новым содержимым, надо вызвать this-&gt;update(), а перед этим<br />отключить от this те виджеты, которые не надо перерисовывать, вызовом для<br />каждого setParent(0). Если же отключать их в paintEvent(), то от них остаются следы.<br />Т.е. теперь я сначала вызываю для них setParent(0), потом вызываю this-&gt;update()<br />и после этого изменяю один параметр, в зависимости от которого в painEvent()<br />рисуется то или иное. Разумеется, для этого уже в paintEvent() для таких виджетов<br />вызывается setParent(this).</p><p>Пётр.</p>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Mon, 12 Sep 2011 16:14:55 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=211338#p211338</guid>
		</item>
		<item>
			<title><![CDATA[Re: Erasing in Qt]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=211079#p211079</link>
			<description><![CDATA[<p>Бррррр. Пошёл за несколькими литрами водки.....</p><p>Это о чем вопрос?</p><p>Где то не стыковка..... </p><p>Что у вас является содержимым окна: это элементы формы или это картинка (ни или вы элементы формы полностью сами рисуете на картинке)?</p>]]></description>
			<author><![CDATA[null@example.com (voral)]]></author>
			<pubDate>Mon, 12 Sep 2011 09:34:52 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=211079#p211079</guid>
		</item>
		<item>
			<title><![CDATA[Erasing in Qt]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=211071#p211071</link>
			<description><![CDATA[<p>Здравствуйте!</p><p>Теперь не удаётся стереть содержимое окна, если надо вывести другой вид. Qt 4.6.3.<br />Т.е. в зависимости от выбранного в меню режима работы надо выводить соответствующий вид,<br />со своими текстами и управляющими элементами. Это получается только в 1-й раз, а потом<br />очередной вид рисуется поверх 1-го, хотя я вызываю eraseRect и fillRect. И ещё во 2-й раз не выводятся<br />строки функцией drawText, выводятся только в 1-й раз. Это независимо от того, рисовать сразу в this<br />или через QPixmap.</p><p>Как это правильно делать, т.е. стереть старый вид? Установить какой-нибудь атрибут виджета или окна,<br />какой-то функцией или как? Просьба посоветовать.</p><p>Пётр.</p>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Mon, 12 Sep 2011 09:20:59 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=211071#p211071</guid>
		</item>
	</channel>
</rss>
