Seite 1 von 1

setText() QAbstractButton und QLabel

Verfasst: 23. Dezember 2011 11:10
von SaLu
Hallo

ich suche eine OberKlasse, welche die Methode setText() für die beiden Klassen QAbstractButton und QLabel beiinhaltet.
Aus der Klassenhierarchie geht dies leider nicht hervor.
Hab schon verschiedene versucht... QAction...
Hat jmd eine Idee?
Vielen dank

Re: setText() QAbstractButton und QLabel

Verfasst: 23. Dezember 2011 11:29
von toba
Beide stammen von QWidget ab.
Allerdings wird setText() erst in QAbstractButton hinzugefügt. Bei QLabel ebenso, (stammt von Qframe, das von QWidget abstammt) hier ist es allerdings ein Slot.

Re: setText() QAbstractButton und QLabel

Verfasst: 23. Dezember 2011 11:39
von SaLu
Ja hab sowas auch aus der Klassenhierarchie gelesen
http://doc.trolltech.com/extras/qt43-class-chart.pdf

QFrame hat setText() ?
http://doc.qt.nokia.com/4.7/qframe-members.html

mein Problem ist das ich als object

QWidget * widget
wird dann zur Laufzeit ein QLabel oder QAbstractButton

(QLabel*)widget->setText()
(QAbstractButton*)widget->setText()
nun suche ich dafür eine Oberklasse.

Re: setText() QAbstractButton und QLabel

Verfasst: 23. Dezember 2011 12:44
von SaLu
oder hab ich irgendwie die Möglichkeit abzufragen ob das Object von QFrame oder von QAbstractButton abgeleitet ist?

Schöner wäre allerdings die obige Variante

Re: setText() QAbstractButton und QLabel

Verfasst: 23. Dezember 2011 13:35
von franzf
Meinst du, nur weil zwei Klassen eine Funktion mit gleichem Namen anbieten, müssen sie automatisch eine gleiche Basis besitzen?
Die erste gemeinsame Basis von QLabel und QAbstractButton ist QWidget. QWidget selber hat keinen Text, das ist einfach ein "abstraktes Dings", auf dem man malen kann, das bestimmte Events bei der Interaktion mit dem User anbietet, usw.
Du könntest aber mal versuchen, dich etwas näher mit der Doku und Qt anzufreunden :P
-> Doku zu QObject!
* QObject::inherits
* Properties
Versuch erstmal selber herauszufinden, was wie funktioniert. Es ist echt nicht schwer, steht alles gut verständlich in der Doku. Und der Umgang mit der Doku und die Kenntnis der fundamentalen Features von Qt sollten mit der Zeit eh in Fleisch und Blut übergehen - da hilft nur "selber probieren"!