NOVINKA! E-learningové kurzy umělé inteligence. Nyní AI za nejlepší ceny. Zjisti více:
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: Vykreslování pomocí třídy QPainter

V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
petr.dar
Člen
Avatar
petr.dar:8.11.2015 21:11

Čau lidi, řešim tak trochu jak je možný že funguje vykreslování na QDialog přes QPainter podle tohoto videa:
https://www.youtube.com/watch?…

Jak je možný že funguje řádek:

QPainter Painter(this);

Když se dívám na konstruktory QPainter, tak jsou 2 ( první bez parametrů a druhý s parametrem QPaintDevice. Třída QPaintDevice už nic nedědí.)
Tak jak je možný že přijímá ukazatel this, který ukazuje na třídu děděnou přes QDialog?

 
Odpovědět
8.11.2015 21:11
Avatar
Sony Nguyen
Tvůrce
Avatar
Odpovídá na petr.dar
Sony Nguyen:9.11.2015 22:45

QWidget dědí z QObject a QPaintDevice

 
Nahoru Odpovědět
9.11.2015 22:45
Avatar
petr.dar
Člen
Avatar
petr.dar:11.11.2015 3:45

Aha, takže je to zděděný všechno do jednoho :-)
Proto mi je divný že vykreslování pomocí QPainter lze jen do QDialog a už ne do QGraphicsView. Už jsem rozjel vykreslování do QGraphicsView přes QGraphicsScene. A nešlo by nějak vykreslovat přes QGraphicsScene a přes QPainter najednou?

Dost mě tam mate funkce:

void QGraphicsScene::drawForeground(QPainter * painter, const QRectF & rect)

Mělo by to nějak jít když je to všechno zděděný.

 
Nahoru Odpovědět
11.11.2015 3:45
Avatar
petr.dar
Člen
Avatar
petr.dar:15.11.2015 6:14

Tak už jsem na to přišel :-)

 
Nahoru Odpovědět
15.11.2015 6:14
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.