Hi,
ist es irgendwie möglich eine Methode in einer Qt Klasse auszuführen sobald sich der Inhalt in einer Variablen ändert?
Also das gleiche Prinzip wie es auch mit dem connect Signal z.B. einem Slider geht?
Bekomme ab und an neue Werte in ein Array und würde gern einen Zeiger mit an das Qt Objekt übergeben. Dieses soll dann, sobald sich der Inhalt des Arrays ändert, auch entsprechende Meldungen ausgeben.
Gruß Tom
Qt: SIGNAL(valueChanged(int)) für 'normale' Variablen?
-
- Beiträge: 30
- Registriert: Fr Nov 09, 2012 10:29 am
- cloidnerux
- Moderator
- Beiträge: 3125
- Registriert: Fr Sep 26, 2008 4:37 pm
- Wohnort: Ram (Gibts wirklich)
Re: Qt: SIGNAL(valueChanged(int)) für 'normale' Variablen?
Ich kenne keine direkte Möglichkeit, aber ich denke eine getter/setter Funktion ist die Lösung. Also statt direkt auf die Variablen/Array zuzugreifen hast du eine Funktion, der du die Werte übergibst und diese Funktion kann dann alles weitere einleiten.Dieses soll dann, sobald sich der Inhalt des Arrays ändert, auch entsprechende Meldungen ausgeben.
Redundanz macht wiederholen unnötig.
quod erat expectandum
quod erat expectandum
Re: Qt: SIGNAL(valueChanged(int)) für 'normale' Variablen?
Wie cloidnerux schon angedeutet hat, implementierst du dir deinen Array am besten als Objekt selbst. Dabei leitest du von QObject ab und bietest Methoden bzw. Operatoren an, die die entsprechenden Signale auslösen. Oder du leitest protected von einem Container (z.B. QVector) ab und überschreibst jene Methoden, die du öffentlich haben willst.
- Xin
- nur zu Besuch hier
- Beiträge: 8862
- Registriert: Fr Jul 04, 2008 11:10 pm
- Wohnort: /home/xin
- Kontaktdaten:
Re: Qt: SIGNAL(valueChanged(int)) für 'normale' Variablen?
Was spricht gegen ein Template, dass den entsprechenden Datentyp kapselt und automatisch Getter und Setter anbietet.
Womit direkt die Frage folgt, ob es das schon gibt. Und falls ja, könnte ich mir gut vorstellen, dass es bereits einfache Ableitungen gibt wie QInt.
Womit direkt die Frage folgt, ob es das schon gibt. Und falls ja, könnte ich mir gut vorstellen, dass es bereits einfache Ableitungen gibt wie QInt.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.
Re: Qt: SIGNAL(valueChanged(int)) für 'normale' Variablen?
http://www.proggen.org/doku.php?id=fram ... _und_slotsXin hat geschrieben:Was spricht gegen ein Template, dass den entsprechenden Datentyp kapselt und automatisch Getter und Setter anbietet.
Siehe die letzten 2 Sätze auf der Seite.
qint gibt es in anderer Form:Xin hat geschrieben:Womit direkt die Frage folgt, ob es das schon gibt. Und falls ja, könnte ich mir gut vorstellen, dass es bereits einfache Ableitungen gibt wie QInt.
http://qt-project.org/doc/qt-4.8/qtglobal.html
Es gibt "verschiedene" qints, die die angegebene Größe auf jedem System garantieren.