使用常量参数连接插槽
Connect slot with constant argument
需要使用常量参数将复选框连接到树视图中的自定义插槽,如下所示:
connect(checkBox, SIGNAL(clicked(bool)), tableView, SLOT(mySlot(int col, bool)));
第一个参数类型 int
应该像 0,1,2 这样的常量...如何在 C++11 中使用新的 Qt 5 连接系统和 lambda 表达式正确地编写它?
根据 new signal syntax documentation,它应该是这样的:
connect(checkBox, &CheckBox::clicked,
[&tableView](bool b) { tableView.mySlot(2, b); });
这里CheckBox
是checkBox
的类型,我们硬编码了值2
作为mySlot
的第一个参数。
这有效,我检查过:
QObject::connect(checkBox, &QCheckBox::clicked, [=](bool checked) {
tableView->mySlot(1, checked);
});
需要使用常量参数将复选框连接到树视图中的自定义插槽,如下所示:
connect(checkBox, SIGNAL(clicked(bool)), tableView, SLOT(mySlot(int col, bool)));
第一个参数类型 int
应该像 0,1,2 这样的常量...如何在 C++11 中使用新的 Qt 5 连接系统和 lambda 表达式正确地编写它?
根据 new signal syntax documentation,它应该是这样的:
connect(checkBox, &CheckBox::clicked,
[&tableView](bool b) { tableView.mySlot(2, b); });
这里CheckBox
是checkBox
的类型,我们硬编码了值2
作为mySlot
的第一个参数。
这有效,我检查过:
QObject::connect(checkBox, &QCheckBox::clicked, [=](bool checked) {
tableView->mySlot(1, checked);
});