signal - slot Problem [gelöst]

Verschiedenes zu Qt
Antworten
C_G
Beiträge: 19
Registriert: 26. Oktober 2004 09:58
Kontaktdaten:

signal - slot Problem [gelöst]

Beitrag von C_G »

Moin.
Ich befasse mich erst seit ein paar Tagen mit QT und habe ein Problem.
Ich möchte über eine Spinbox einen Wert einlesen, und diesen auf einem
Label abbilden. Soweit kein Problem. Das hab ich mit dem designer gut
hinbekommen. Aber wie schaffe ich es den eintestllten Wert vor der
Ausgabe auf dem Label umzurechnen?
Generell würde mich interessieren wie ich auf die Variablen der einzelnen
Widgets zugreifen kann. In der doku fand ich dahingehend nichts.
Bin für alle Tipps dankbar.
Gruß,
Christian
Zuletzt geändert von C_G am 1. Januar 2007 16:18, insgesamt 1-mal geändert.
Code 4 Freedom
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Schau dir dazu mal dieses Beispiel an: http://doc.trolltech.com/4.2/designer-c ... rform.html
C_G
Beiträge: 19
Registriert: 26. Oktober 2004 09:58
Kontaktdaten:

Beitrag von C_G »

Wenn ich das richtig verstanden habe, erweitert er im Beispiel das Programm um eine classe:

Code: Alles auswählen

 class CalculatorForm : public QWidget
 {
     Q_OBJECT

 public:
     CalculatorForm(QWidget *parent = 0);

 private slots:
     void on_inputSpinBox1_valueChanged(int value);
     void on_inputSpinBox2_valueChanged(int value);

 private:
     Ui::CalculatorForm ui;
 };
In diese class schreibt er nun 2 slots. Unten erstellt er eine Instanz von
ui, mit der er dann alle anderen Operationen steuert. Ist das soweit richtig?
Wenn ja, geht das nicht einfacher? Könnte man nicht direkt im designer
auf den Wert zugreifen den eine Spinbox einliest? Mir erscheint das hier
etwas umständlich.
Gruß,
Christian
Code 4 Freedom
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

Du kannst ja im Designer eine direkt Signal-Slot-Verbindung zwischen deiner QSpinBox und deinem QLabel anlegen, nur macht dies nur selten Sinn...
C_G
Beiträge: 19
Registriert: 26. Oktober 2004 09:58
Kontaktdaten:

Beitrag von C_G »

Das Problem ist gelöst. Ich habe im designer in der ui.h datei einen eigenen
Slot definiert, und diesen dann mit einem Signal verbunden. In diesem
eigenen Slot kann ich auf alle Daten zugreifen, und die Berechnungen
durchführen.
Code 4 Freedom
Antworten