Seite 1 von 1

In QFrame auf QWidget zeichnen

Verfasst: 5. Juni 2009 14:47
von toem
Moin,
ich habe ein QWidget und hierauf mehrere QFrames liegen.
Nun möchte ich via Paint auf mehreren dieser QFrames zeichnen, bzw. Texte ausgeben. Das PaintEvent für das Widget bekomme ich ohne Probleme angesprochen. Aber wie komme ich an die PaintEvents für die Frames?
Leider steige ich zur Zeit von c# auf c++ und qt um und mir fehlen noch ein paar Grundlagen. Ich hoffe aber, das mir trotzdem jemand einen ip geben kann.

Danke

Verfasst: 5. Juni 2009 16:32
von RHBaum
Eigentlich wie beim QWidget auch ....
QFrame ist von QWidget abgeleitet ...

also
virtual bool event ( QEvent * event ); sollte auch beim QFrame ankommen
genau so wie das fertig gemappte:
virtual void paintEvent ( QPaintEvent * event );

Wo genau ist das Problem ?

Vielleicht solltest auch was anderes ueberlegen:

zum darstellen von texten sind andere widgets besser geeignet ...
Selber malen gaenge vielleicht besser, wenn man nen SVG(XML) oder nen anderes Bildformat manipuliert und anzeigt.

Oder wollst du selber controls "nur" sowas wie eigene controls bauen ?

Ciao ....

Verfasst: 5. Juni 2009 16:33
von franzf
K.A. ob es sinnvoll ist, du kannst theoretisch mittels eventFilter() in das paintEvent eingreifen. Aber ich würde doch mal sagen, dass das besser ist, wenn du dir ein eigenes Widget schreibst, das du entsprechend selber zeichnest...
Und QLabel::setText() kennst du ja, oder?