理解信号和槽(二)

声明用户槽

一个槽实际上是个普通的成员函数,但是,你需要使用特殊关键字,使moc(百度了解)能够将槽和其他成员函数区分开来:

class MyMainWindow : public QWidget
{
    Q_OBJECT
public:
    MyMainWindow();
public slots:
    MyExitSlot();
};

所有具有用户信号和槽的QT类必须用到这个宏,暂时不需要了解为何要这样做,只要记住声明中包含该宏即可。在声明中使用moc时,会发现这一行public slots:并将这行后的所有函数看作槽(直到类声明结束或者另一部分开始,如private)

创建用户信号

class MyMainWindow : public QWidget
{
    Q_OBJECT
public:
    MyMainWindow();
    SetValue(int);
public slots:
    ChangeValue(int);
signals:
    ValueChanged(int);
};

 

posted @ 2021-05-28 15:48  朱元叹  阅读(51)  评论(0)    收藏  举报