• 5251阅读
  • 3回复

新手学习qt,遇到一个简单的槽的问题,希望高手给指点一下 [复制链接]

上一主题 下一主题
离线wn_nuaa
 

只看楼主 正序阅读 楼主  发表于: 2007-07-10
新手学习qt,遇到一个简单的槽的问题,希望高手给指点一下
— 本帖被 XChinux 执行加亮操作(2008-07-18) —
刚接触qt,按书上写的编了一个简单的槽(myquitslot())的程序
编译通过了
但是不知道为什么,运行的时候出现找不到槽myquitslot的错误提示
label.h代码:

#include<qwidget.h>
#include<qpushbutton.h>
class mywindows : public QWidget
{    Q_OBJECT
public:
    mywindows();
public slots:
    void myquitslot();
private:
    QPushButton *b1;
   
};

下面是label.cpp

#include<qfont.h>
#include<qapplication.h>
#include<stdlib.h>

#include"label.h"

mywindows::mywindows()
{
    setGeometry(100,100,200,170);
 
    b1=new QPushButton("button1",this);
    b1->setGeometry(20,20,100,80);
    b1->setFont(QFont("times",18,QFont::Bold));
    connect(b1,SIGNAL(clicked()),qApp,SLOT(myquitslot()));
}

void mywindows::myquitslot()
{
    exit(0);
}

接下来是main.cpp
#include<qapplication.h>

#include"label.h"
int main(int argc,char **argv)
{
    QApplication a(argc,argv);
   
    mywindows w;
    a.setMainWidget(&w);
    w.show();
    a.exec();
}
我的版本是3。0,编译命令 使用的 是 qmake -project;qmake;make
哪位热心的朋友帮我看看哪出了错,
错误信息是no such slot myquitslot::QApplication
离线XChinux

只看该作者 3楼 发表于: 2007-07-12
出错信息是什么?
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线wn_nuaa

只看该作者 2楼 发表于: 2007-07-12
楼上说的有道理
可是 把 qApp换成了this还是不行
怎么解决呢?
离线XChinux

只看该作者 1楼 发表于: 2007-07-10
myquitslot()是mywindows类的,而不是qApp的。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个