【发布时间】:2018-11-21 11:24:27
【问题描述】:
在 Qt 中,如果信号没有重载,则可以像这样将其传递给 connect 方法。
QObject::connect(comboBox, &QComboBox::currentTextChanged, [&]()-> void {});
但如果信号过载,则可以分两步完成。
示例:
在 Qt 的 QComboBox 类中,突出显示的方法被重载
void QComboBox::highlighted(int index)
void QComboBox::highlighted(const QString & text)
使用 QObject::connect 时,我们可以声明指向成员函数变量的指针,然后使用它,这需要 2 个步骤。
void (QComboBox::*fptr) (int) = &QComboBox::highlighted;
QObject::connect(comboBox, fptr, [&]()-> void {
insertWidgetToMapAndSend(listView);
});
是否可以在不声明 ftptr 的情况下传递重载方法?
【问题讨论】: