首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > QT开发 >

QT信号槽,该如何处理

2012-09-07 
QT信号槽总是出现这样的编译错误:为什么signals会变成无法解析的外部命令呢?#ifndef CONTROL_H#define CON

QT信号槽
总是出现这样的编译错误:为什么signals会变成无法解析的外部命令呢?
#ifndef CONTROL_H
#define CONTROL_H

#include "ui_control.h"

class control : public QWidget,public core_zhi
{
Q_OBJECT
signals:
void P_1_change(double value);
void P_2_change(double value);
protected:
double show_time;//一共显示的时间长度
double limit_max;//纵坐标上限
double limit_min;//纵坐标下限
short point_num;//一共所能记录的点的上限
bool init_flag;
std::list<plot_point_curves> point_list;
QSemaphore *guard_list;
public:
double P;//输入的功率

control(QString &name_input,short &ID_output,QWidget *parent=0);
~control();
void set_show_time(double x);
void paintEvent(QPaintEvent *x);
double get_time();
void input(boost::shared_ptr<std::list<double>> x);
void set_point_num(short x);
void set_limit(std::vector<double> x);

private:
Ui::control ui;

public slots:
void range_down();
void range_up();
void P_changed(int);

};

#endif // CONTROL_H

control.obj : error LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall control::metaObject(void)const " (?metaObject@control@@UBEPBUQMetaObject@@XZ)
control.obj : error LNK2001: 无法解析的外部符号 "public: virtual void * __thiscall control::qt_metacast(char const *)" (?qt_metacast@control@@UAEPAXPBD@Z)
control.obj : error LNK2001: 无法解析的外部符号 "public: virtual int __thiscall control::qt_metacall(enum QMetaObject::Call,int,void * *)" (?qt_metacall@control@@UAEHW4Call@QMetaObject@@HPAPAX@Z)
control.obj : error LNK2019: 无法解析的外部符号 "protected: void __thiscall control::P_2_change(double)" (?P_2_change@control@@IAEXN@Z),该符号在函数 "public: void __thiscall control::P_changed(int)" (?P_changed@control@@QAEXH@Z) 中被引用
control.obj : error LNK2019: 无法解析的外部符号 "protected: void __thiscall control::P_1_change(double)" (?P_1_change@control@@IAEXN@Z),该符号在函数 "public: void __thiscall control::P_changed(int)" (?P_changed@control@@QAEXH@Z) 中被引用

[解决办法]
_moc.cpp文件有生成和编译吗

热点排行