[Geloest] Variable verliert ihren Wert
Verfasst: 13. Januar 2008 07:25
Ich habe gerade ein boeses Verstaendnisproblem, was moeglicherweise eher meinen bescheidenen Kenntnissen in der OOPS Programmierung denn QT zu verdanken ist.
Also, ich habe u. a. die drei folgenden Dateien:
Mein Problem ist die Variable "QString currentMandant", der entsprechend der Auswahl durch den Benutzer ein Wert zugewiesen wird.
Doch immer, wenn der Benutzer in der mittels Designer erstellten Gui in eine andere Maske wechselt, verliert diese Variable ihren Wert, weil vermutlich die Erpel.h neu abgearbeitet wird.
Ich weiss, die Frage ist schon fast peinlich und in reinem C/C++ haette ich da auch kein Problem, aber hier faellt mir leider im Moment ueberhaupt nichts zu ein.
Wo mache ich hier den Denkfehler, oder anderes formuliert, was muss ich tun, damut meine Variable ihren Wert behaelt und nicht bei jedem Schleifendurchlauf neu initialisiert wird.
Wer auch immer sich also meiner erbarmen wird, mein Dank ist ihm jetzt schon sicher ...
Also, ich habe u. a. die drei folgenden Dateien:
Code: Alles auswählen
// main.cpp
#include <QApplication>
#include "Erpel.h"
int main( int argc, char* argv[]) {
QApplication app(argc, argv);
Erpel myErpel;
myErpel.show();
return app.exec();
}
Code: Alles auswählen
//Erpel.cpp
#include <QtGui>
// hier folgt weiterer Code ....
#include "Erpel.h"
Erpel::Erpel(QWidget *parent) : QMainWindow( parent )
{
setupUi(this);
// hier folgt weiterer Code ....
connect( actionQuit,SIGNAL (triggered()), this, SLOT(slotClose()) );
// hier folgt weiterer Code ....
}
Code: Alles auswählen
// Erpel.h
#ifndef ERPEL_H
#define ERPEL_H
#include <QString>
#include "ui_erpel.h"
class Erpel : public QMainWindow, public Ui::Erpel
{
Q_OBJECT
public:
Erpel (QWidget * parent = 0);
~Erpel();
QString currentMandant;
// hier folgt weiterer Code ....
#endif
Doch immer, wenn der Benutzer in der mittels Designer erstellten Gui in eine andere Maske wechselt, verliert diese Variable ihren Wert, weil vermutlich die Erpel.h neu abgearbeitet wird.
Ich weiss, die Frage ist schon fast peinlich und in reinem C/C++ haette ich da auch kein Problem, aber hier faellt mir leider im Moment ueberhaupt nichts zu ein.
Wo mache ich hier den Denkfehler, oder anderes formuliert, was muss ich tun, damut meine Variable ihren Wert behaelt und nicht bei jedem Schleifendurchlauf neu initialisiert wird.
Wer auch immer sich also meiner erbarmen wird, mein Dank ist ihm jetzt schon sicher ...