• 3042阅读
  • 0回复

QT编程-*******最后链接出错******急 [复制链接]

上一主题 下一主题
离线rockyluo
 

只看楼主 正序阅读 楼主  发表于: 2008-08-01
— 本帖被 XChinux 执行加亮操作(2008-08-02) —
QT编程
make后出现如下错误:

-pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -O2 -fno-default-inline -DNO_DEBUG -I/home/x86-qt/qt-2.3.7/include -o form1.o form1.cpp
g++ -c -pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -O2 -fno-default-inline -DNO_DEBUG -I/home/x86-qt/qt-2.3.7/include -o main.o main.cpp
/home/x86-qt/qt-2.3.7/bin/moc form1.h -o moc_form1.cpp
form1.h:48: Warning: Variable as signal or slot.
g++ -c -pipe -DQWS -fno-exceptions -fno-rtti -Wall -W -O2 -fno-default-inline -DNO_DEBUG -I/home/x86-qt/qt-2.3.7/include -o moc_form1.o
moc_form1.cpp
g++  -o form1 form1.o main.o moc_form1.o  -L/home/x86-qt/qt-2.3.7/lib -lm -lqte
form1.o(.text+0xc87): In function `Form1::mainSlot()':
: undefined reference to `Tab::Tab[in-charge](QWidget*, char const*)'
form1.o(.text+0xce1): In function `Form1::mainSlot()':
: undefined reference to `Tab::Tabluo[in-charge](QWidget*, char const*)'
form1.o(.text+0xd20): In function `Form1::mainSlot()':
: undefined reference to `Tab::Tab[in-charge](QWidget*, char const*)'
collect2: ld returned 1 exit status
make: *** [form1] Error 1

这是什么原因???



我代码为:(include <*.h>文件都包含了,"using namespace std;" 也都加了)
------------------Form1.h-----------------------
class Form1:public QWidge
{
}
-------------------------------------------------------


------------------Form1.cpp-------------------------------------------------
Form1::Form1( QWidget* parent, const char* name, WFlags fl )
    : QWidget( parent, name, fl )
{

}
Form1::XXX()
{                   
                    QTabWidget* TabWidget = new QTabWidget( mw );
        TabWidget->setGeometry( QRect( 0, 0, 320, 240 ) );
   

        Tab* tab = new Tab( TabWidget, "tab" );
    tab->setBackgroundColor(QColor(60,140,120));
        TabWidget->insertTab( tab, "menu1" );
}
----------------------------------------------------------------------------------------



-------------------------------tab.h-----------------------
class Tab:public QWidget
{
public:
    Tab( QWidget*  parent, const char* name );
    ~Tab();
protected slots:
    void paintEvent(QPaintEvent*);

};
--------------------------------------------------------------------------------------


-------------------------------tab.cpp----------------------------------------------
Tabluo::Tabluo( QWidget* parent ,const char* name)
    :QWidget(parent,name,fl)
{

}

void Tabluo::paintEvent(QPaintEvent*)
{
        QPainter paint;
        paint.begin(this);
        paint.setPen(QPen(blue,10,QPen::DashLine));
        paint.drawRect(20,20,160,160);
        paint.end();
}
----------------------------------------------------------------------------------------
                                                                                                              我们要团结一心,秉承Linux的开源精神,共享Qt问题的解决方法!
快速回复
限100 字节
 
上一个 下一个