当在 Qt 中需要在两个对象之间建立通信时,可以使用 connect 函数。该函数在 QObject 类中定义,并在 Qt 中被广泛使用。

例如,假设有一个 MainWindow 类和一个 MyWidget 类,需要在 MainWindow 和 MyWidget 之间建立通信。在 MainWindow 类的构造函数中,可以使用 connect 函数将 MainWindow 类的一个函数与 MyWidget 类的一个信号连接起来。

MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
    MyWidget *widget = new MyWidget(this);
    connect(widget, SIGNAL(buttonClicked()), this, SLOT(onButtonClicked()));
}

在上面的代码中,connect 函数将 MyWidget 类的 'buttonClicked' 信号与 MainWindow 类的 'onButtonClicked' 函数连接起来。当 MyWidget 类的 'buttonClicked' 信号被触发时,'onButtonClicked' 函数将被调用。

需要注意的是,connect 函数的参数顺序非常重要。第一个参数是信号的发送者,第二个参数是信号本身,第三个参数是槽的接收者,第四个参数是槽本身。如果参数顺序不正确,连接将无法建立。

Qt connect 函数详解:实例讲解对象间通信

原文地址: https://www.cveoy.top/t/topic/mYV1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录