Signal slot connect problem

Alles rund um die Programmierung mit Qt
Antworten
bmeyer
Beiträge: 5
Registriert: 24. September 2006 14:12

Signal slot connect problem

Beitrag von bmeyer »

Hallo zusammen.
Wenn ich meiner Testfunktion ein Objekt meiner Klasse übergebe, so wird
die MessageBox nicht angezeigt. Übergebe ich der Testfunktion nichts, so
wird sie angezeigt.

Vielen Dank im voraus...

Hier der Code:

Code: Alles auswählen

meinDialog::meinDialog(meineKlasse& myClass, QWidget *parent)
        : QDialog(parent)
{
  tabWidget = new QTabWidget;
  tabWidget->addTab(new TestTab(myClass), tr("TestTab"));

  QPushButton *okButton = new QPushButton(tr("OK"));
  QPushButton *cancelButton = new QPushButton(tr("Cancel"));

  connect(okButton, SIGNAL(clicked()), this, SLOT( TestFunktion(myClass) ));
...

}

void meinDialog::TestFunktion(meineKlasse& myClass)
{
    QMessageBox::about(this, tr("Meldung:"),
                 tr("In der TestFunktion."));
}


In der Header:
------------------------------------------------------------------------------
 class meinDialog : public QDialog
{
  Q_OBJECT

  public:
        meinDialog(meineKlasse& myClass, QWidget *parent = 0);

  private slots:
        void TestFunktion(meineKlasse& myClass);

  private:
        QTabWidget *tabWidget;
};
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Man kann in einem connect keine Parameter übergeben! Gibts schon zig mal hier im Forum. Lernt doch bitte wie Signal/Slots funktionieren!

Code: Alles auswählen

connect(okButton, SIGNAL(clicked()), this, SLOT( TestFunktion() )); 
was anderes geht nicht.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
Antworten