Slot wird nicht ausgeführt
Verfasst: 3. September 2006 12:26
Hi,
ich bin neu hier und bin noch ein blutiger qt-Anfänger.
Daher wollte ich einfach mal ein kleines Testprogramm schreiben, das mir, wenn ich auf einen Button klicke, eine Meldung ausgiebt. Den Signal/Slot habe ich mit connect verbunden, allerdings passiert nichts. Die Funktion wird nicht aufgerufen und die Meldung nicht ausgegeben.
Was habe ich falsch gemacht?
Hier der Code:
Zum kompilieren nehme ich Eclipse+CDT+MinGW her.
Vielen Dank im voraus.
ich bin neu hier und bin noch ein blutiger qt-Anfänger.
Daher wollte ich einfach mal ein kleines Testprogramm schreiben, das mir, wenn ich auf einen Button klicke, eine Meldung ausgiebt. Den Signal/Slot habe ich mit connect verbunden, allerdings passiert nichts. Die Funktion wird nicht aufgerufen und die Meldung nicht ausgegeben.
Was habe ich falsch gemacht?
Hier der Code:
Code: Alles auswählen
#include <QApplication>
#include <QFont>
#include <QPushButton>
#include <QWidget>
#include <QMessageBox>
class MyWidget : public QWidget
{
public:
MyWidget(QWidget *parent = 0);
private slots:
/* Slot */
void SlotOpenFile();
};
MyWidget::MyWidget(QWidget *parent)
: QWidget(parent)
{
setFixedSize(200, 120);
QPushButton *quit = new QPushButton(tr("Open file"), this);
quit->setGeometry(47, 40, 105, 30);
quit->setFont(QFont("Times", 18, QFont::Bold));
connect(quit, SIGNAL(clicked()), this, SLOT(SlotOpenFile()));
}
void MyWidget::SlotOpenFile()
{
MessageBox::information(this, "Application",
"Test");
}
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MyWidget* widget = new MyWidget();
widget->show();
return app.exec();
}
Vielen Dank im voraus.