Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Qt:连接信号和插槽_C++_Qt_Signals_Slot - Fatal编程技术网

C++ Qt:连接信号和插槽

C++ Qt:连接信号和插槽,c++,qt,signals,slot,C++,Qt,Signals,Slot,我有一个main窗口,其中包含一个带有QTextEdit的自定义小部件。 我想在main窗口和QTextEdit之间创建一个信号/插槽 在main窗口中我有: QObject::connect(ui->Header, SIGNAL(ui->Header->getTextWidget()->textChanged()), this, // this : MainWindow SLOT(headerUpdated())); //

我有一个
main窗口
,其中包含一个带有
QTextEdit
的自定义小部件。 我想在
main窗口
QTextEdit
之间创建一个信号/插槽

main窗口中
我有:

QObject::connect(ui->Header,
        SIGNAL(ui->Header->getTextWidget()->textChanged()),
        this, // this : MainWindow
        SLOT(headerUpdated())); // Function of MainWindow

但这是行不通的。甚至有可能创建这样的信号/插槽组合吗?

为什么要麻烦-让Qt发挥所有的魔力:)只需将您的插槽命名(在主窗口中)如下:

void on_<object name>_<signal name>(<signal parameters>);
void on_u;();
你完成了。更多信息请点击此处: 重要提示:“对象名称”部分表示对象的名称,而不是变量名称。如果在QtDesigner中设计窗口,则应设置该窗口(在ui.setupUi方法中)。如果没有-手动设置(通过调用


请注意插槽中的参数数量。以下是我要做的:我只需复制信号原型(从标题或文档-例如:-再次注意“:”和方法名称[某种不可破坏的零宽度空间]-仅在从v5.x文档复制时出现)之间的奇怪空白,并在其前面加上
on_objectName
。这保证了插槽可以连接到信号

这是可能的。请阅读信号和插槽或其他100个问题中的一个。连接的第一个参数应该是发出信号的对象,这将是任何
getTextWidget
包含,而不是
标题。谢谢sjdowling,这很有帮助!我不知道还有其他方法。谢谢!