gpt4 book ai didi

qt - QT Creator中的Signal to Slot,connect()函数在哪里?

转载 作者:行者123 更新时间:2023-12-03 03:02:50 26 4
gpt4 key购买 nike

在 QT Creator 的设计模式中,我右键单击一个小部件并选择“转到槽”,它会为该小部件的信号之一创建一个槽函数。

我本以为这会生成一个 connect() 函数来创建此连接,但是,我在任何源代码中都找不到类似的内容。

将小部件的信号连接到槽函数的实际代码在哪里?

最佳答案

如果您使用 QtCreator 的设计器,则输出之一是 .ui 文件

Qt Designer ui 文件是表单小部件树的 XML 表示形式,并由 uic 处理。 ,“用户界面编译器”

Qt ui 格式提供的功能之一是 AutoConnect

uic 会在表单的 setupUi() 函数中自动生成代码来连接信号和槽。

其工作方式如下:

您的插槽必须符合以下格式:

void on_<object-name>_<signal-name>(<signal-parameters>);

其中 object-name 是发出此插槽所属信号的对象的名称。

随后,uic 生成调用 QMetaObject::connectSlotsByName(this); 的代码

使用Qt的反射系统,找到具有objectName()=object-nameQObject,并且它的信号已连接到您的插槽。

关于qt - QT Creator中的Signal to Slot,connect()函数在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43918098/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com