Seite 1 von 1

wert übergeben

Verfasst: 15. April 2009 14:29
von mh1977
Hallo,

nachdem ich die ersten Probleme mit QT4 gelöst habe und die ersten Progs funktionieren, stehe ich nun vor einem neuen Problem:
Ich will "int value" von QSpinBox in meiner eigenen Funktion/Klasse haben in einer variablen, oder am besten noch als char. Ich will einen Kanal auswählen und dann einen string über die serielle Schnittstelle raus schicken.
Meine Versuche, diesen Wert woanders zur Verfügung zu haben, schlugen fehl.

danke

Verfasst: 15. April 2009 15:35
von pfid

Code: Alles auswählen

class MyClass
{
   public:
...

      void get();
...
   private:

      int value;
};

void MyClass::get()
{
   value = spinBox->value();
}
Oder hab ich dich jetzt falsch verstanden?

Verfasst: 15. April 2009 19:06
von mh1977
Im Prinzip schon, doch findet er die Spinbox nicht in meiner eigenen Klasse mit
value=spint->value();

Verfasst: 15. April 2009 19:44
von upsala
Wie wärs wenn du mal etwas Code zeigst?

Verfasst: 15. April 2009 20:28
von mh1977
ok, danke dass mir einer hilft. Ich überblicke das nicht ganz


MainWindow::MainWindow()
{...
QSpinBox* spint =new QSpinBox; //im QDockwidget top
Seriell ser;


//QObject::connect(spint,SIGNAL(valueChanged(int)),
// &ser,SLOT(value(a))); //Das war so ein Versuch
}

class Seriell:public QObject{ //eigene Klasse in seriell.h
...
public slots:
void empfangen();
}

void Seriell::empfangen() //in seriell.cpp
{
value=spint->value();
}

ich habe also eine QSpinBox im oberen Andockfenster und will in meiner Klasse Seriell mit der Funktion empfangen/senden den Wert der SpinBox wegschicken.

Verfasst: 15. April 2009 20:40
von upsala
Bitte eigne dir C++-Grundlagen an. Siehe: 'Gültigkeit von Variablen'