Qt中的槽

Qt中的槽

(1)槽是普通的 C++ 成员函数,可以被正常调用,它们唯一的特殊性就是很多信 可以与其相关联。当与其关联的信 被发射时,这个槽就会被调用。槽可以有参数,但槽的参数不能有缺省值。

(2)既然槽是普通的成员函数,因此与其它的函数一样,它们也有存取权限。槽的存取权限决定了谁能够与其相关联。同普通的 C++ 成员函数一样,槽函数也分为三种类型,
即 public slots、private slots 和 protected slots。

public slots:在这个区内声明的槽意味着任何对象都可将信 与之相连接。这对于组件编程非常有用,你可以创建彼此互不了解的对象,将它们的信 与槽进行连接以便信息能够正确的传递。
protected slots:在这个区内声明的槽意味着当前类及其子类可以将信 与之相连接。这适用于那些槽,它们是类实现的一部分,但是其界面接口却面向外部。
private slots:在这个区内声明的槽意味着只有类自己可以将信 与之相连接。这适用于联系非常紧密的类。

(4)槽也能够声明为虚函数,这也是非常有用的。

(5)槽的声明也是在头文件中进行的。例如,下面声明了三个槽:
      public slots: 
void mySlot(); 
void mySlot(int x); 
void mySignalParam(int x,int y);
(6)如果一个类要使用信 /槽功能,就必须在其中声明Q_OBJECT.
class client : public QWidget
{
    Q_OBJECT  //在Qt中,如果一个类要使用信 /槽功能,就必须在其中声明Q_OBJECT

public:

private:

private slots:
};

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2022年7月22日
下一篇 2022年7月22日

相关推荐