<?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; paintEvent in Qt5]]></title>
		<link>https://linuxforum.ru/viewtopic.php?id=36999</link>
		<atom:link href="https://linuxforum.ru/extern.php?action=feed&amp;tid=36999&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «paintEvent in Qt5».]]></description>
		<lastBuildDate>Tue, 16 Dec 2014 09:32:50 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: paintEvent in Qt5]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=435856#p435856</link>
			<description><![CDATA[<p>Оказалось, что в дочернем виджете нельзя было устанавливать атрибут WA_PaintOnScreen.<br />Возможно, что система воспринимает это как попытку рисовать в this главного виджета,<br />что запрещено. Также потребовалось установить атрибут WA_OpaquePaintEvent,<br />он устраняет мелькание.</p><p>Пётр.</p>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Tue, 16 Dec 2014 09:32:50 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=435856#p435856</guid>
		</item>
		<item>
			<title><![CDATA[paintEvent in Qt5]]></title>
			<link>https://linuxforum.ru/viewtopic.php?pid=434987#p434987</link>
			<description><![CDATA[<p>Здравствуйте!</p><p>После переноса программы с Qt4 на Qt5 в ней перестал вызываться paintEvent во внутреннем виджете.<br />Я попробую описать ситуацию словами, как общий случай.<br />Именно, кроме главного виджета, наследующего QMainWindow, есть ещё программный модуль с классом,<br />наследующим QWidget, в котором есть свой paintEvent. В нём отрисовываются jpg по мере их готовности.<br />В главном виджете создаётся экземпляр этого класса с указанием себя как родительского, т.е. this.<br />Дальше все как обычно, в paintEvent он функцией show выводится на экран, а картинки в нём<br />меняются в этом экземпляре в его paintEvent и оказываются на экране без участия главного виджета.</p><p>После переноса программы на Qt5 это перестало работать. Как оказалось, в этом экземпляре<br />перестал вызываться его paintEvent по сигналу update, но всё остальное работает.<br />Место на экране для этого виджета остаётся чёрным.<br />Если создавать экземпляр этого класса без родительского, то paintEvent вызывается, место на экране<br />затирается функцией erase во внутреннем paintEvent, но картинки не появляются, хотя то место во<br />внутреннем painEvent, где они выводятся функцией drawImage, проходится.</p><p>М.б., кто-нибудь знает, как это делается в Qt5? У меня пока не получается.</p><p>Пётр.</p><p>Ещё не сказал, что флаги для внутреннего виджета установлены какие надо.</p>]]></description>
			<author><![CDATA[null@example.com (Peter)]]></author>
			<pubDate>Wed, 10 Dec 2014 13:40:08 +0000</pubDate>
			<guid>https://linuxforum.ru/viewtopic.php?pid=434987#p434987</guid>
		</item>
	</channel>
</rss>
