//mylabel.h
#include <qlabel.h>
#include <qstring.h>
#include <qwidget.h>
class MyLabel:public QLabel
{
public:
MyLabel(QWidget *parent);
~MyLabel();
};
//mylabel.cpp
#include "mylabel.h"
MyLabel::MyLabel(QWidget* parent):QLable(parent)
{
}
MyLabel::~MyLabel()
{
}
//object.cpp
#include <qapplication.h>
#include "mylabel.h"
int main(int argc,char** argv)
{
QApplication app(argc,argv);
MyLabel *mylabel=new MyLabel(NULL);
QString string("hello,object");
mylabel->setText(string);
mylabel->setAlignment(Qt::AlignVCenter|Qt::AlignHCenter);
mylabel->setGeometry(0,0,180,75);
mylabel->show();
app.setMainWidget(mylabel);
return (app.exec());
}
用 qmake -project
qmake
出现 mylabel.cpp: In constructor `MyLabel::MyLabel(QWidget*)':
mylabel.cpp:2: class `MyLabel' does not have any field named `QLable'
mylabel.cpp:3: no matching function for call to `QLabel::QLabel()'
/usr/lib/qt-3.1/include/qlabel.h:162: candidates are: QLabel::QLabel(const
QLabel&)
/usr/lib/qt-3.1/include/qlabel.h:65: QLabel::QLabel(QWidget*,
const QString&, QWidget*, const char* = 0, unsigned int = 0)
/usr/lib/qt-3.1/include/qlabel.h:63: QLabel::QLabel(const
QString&, QWidget*, const char* = 0, unsigned int = 0)
/usr/lib/qt-3.1/include/qlabel.h:61: QLabel::QLabel(QWidget*,
const char* = 0, unsigned int = 0)
make: *** [mylabel.o] Error 1
用 g++ object.cpp -o object -lqt
出现 /tmp/ccRfRuvQ.o(.text+0x4d): In function `main':
: undefined reference to `MyLabel::MyLabel[in-charge](QWidget*)'
collect2: ld returned 1 exit status
求助啊!!! 用的是qt-3.1版本
例子是KDE2\Qt上 的