[QT] connect unbekannt?



  • Hi Leute!
    Ich fange gerade erst mit der Programmierung von grafischen Oberflächen unter Linux an. Ich habe schon ein paar Tutorials zum Thema QT gelesen und die Beispiele ausprobiert. Hat alles wunderbar geklappt. Dann wollte ich was eigenes machen. Ich erstelle also in KDevelop (2.1) ein neues QT-Projekt. Dann habe ich eine Klasse von einer QT-Klasse erben lassen. Als nächstes wollte ich im Konstruktor connect() benutzen:

    connect(this->buttonNew, SIGNAL(clicked()), qApp, SLOT(quit()));
    

    buttonNew ist ein QPushButton. Beim Kompilieren bekomme ich aber folgenden Fehler:
    error: no matching function call to 'TDMainWidget::connect(QPushButton*&, const char[11], QApplication*&, const char[8])'

    Wie kommt das? Vorher habe ich connect genauso benutzt.



  • ich schließe mich der Frage an.

    connect((QObject*)this->buttonNew, SIGNAL(clicked()), qApp, SLOT(quit()))
    

    so lässt sich das Programm zwar kompillieren stürzt aber später ab, keine Ahnung warum.



  • Hier mal die komplette Fehlermeldung:

    gmake all-recursive
    gmake[1]: Entering directory /home/hackbert/projekte/kteledata' Making all in kteledata gmake[2]: Entering directory/home/hackbert/projekte/kteledata/kteledata'
    if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/opt/kde3/include -I/usr/lib/qt3/include -I/usr/X11R6/include -DQT_THREAD_SUPPORT -D_REENTRANT -Wnon-virtual-dtor -Wno-long-long -Wundef -Wall -pedantic -W -Wpointer-arith -Wwrite-strings -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wconversion -O2 -O0 -g3 -Wall -fno-exceptions -fno-check-new -MT tdmainwidget.o -MD -MP -MF ".deps/tdmainwidget.Tpo" \
    -c -o tdmainwidget.o `test -f 'tdmainwidget.cpp' || echo './'`tdmainwidget.cpp; \
    then mv -f ".deps/tdmainwidget.Tpo" ".deps/tdmainwidget.Po"; \
    else rm -f ".deps/tdmainwidget.Tpo"; exit 1; \
    fi
    tdmainwidget.cpp: In constructor TDMainWidget::TDMainWidget()': tdmainwidget.cpp:7: error: no matching function for call toTDMainWidget::
    connect(QPushButton*&, const char[11], QApplication*&, const char[8])'
    /usr/lib/qt3/include/qobject.h:116: error: candidates are: static bool
    QObject::connect(const QObject*, const char*, const QObject*, const char*)
    /usr/lib/qt3/include/qobject.h:227: error: bool
    QObject::connect(const QObject*, const char*, const char*) const
    gmake[2]: *** [tdmainwidget.o] Fehler 1
    gmake[2]: Leaving directory /home/hackbert/projekte/kteledata/kteledata' gmake[1]: *** [all-recursive] Fehler 1 gmake[1]: Leaving directory/home/hackbert/projekte/kteledata'
    gmake: *** [all] Fehler 2
    *** fehlgeschlagen ***



  • Bei mir geht es jetzt alles:

    #include <qpushbutton.h>

    einfach noch einmal in der *.cpp Datei eingebunden



  • Bei mir geht es jetzt auch. Danke für den Tipp!

    P.S.: wäre das nicht was für die FAQ?


Anmelden zum Antworten