如何解决无法将 QButtonGroup::idClicked 连接到函数
我正在尝试将 QButtonGroup 连接到一个函数。但我就是无法让它工作。
我的代码现在的样子:
mainwindow.h:
public slots:
void UserButtonGroup_idClicked(int id);
mainwindow.cpp:
void MainWindow::UserButtonGroup_idClicked(int id) {
ui->label->setText("Button #" + QString::number(id) + " was clicked!");
}
void MainWindow::refresh_user_buttons() {
QButtonGroup UserButtonGroup(this);
for(int i = 0; i<20; ++i){
QPushButton* newButton = new QPushButton("Button " + QString::number(i));
newButton->setSizePolicy(QSizePolicy::Expanding,QSizePolicy::Fixed);
ui->vl_users->addWidget(newButton);
UserButtonGroup.addButton(newButton,i);
}
connect(&UserButtonGroup,&QButtonGroup::idClicked,this,&MainWindow::UserButtonGroup_idClicked);
}
我已经试过了(除了上面这个):
2.
connect(&UserButtonGroup,SIGNAL(idClicked(int)),SLOT(UserButtonGroup_idClicked(int));
但这根本行不通。尝试方法 1 和 2 时,我不会收到任何错误或问题,但按钮不会执行任何操作。当尝试按名称连接插槽时,它会给出错误“on_UserButtonGroup_idClicked(int) 没有匹配信号”。
我希望你能帮我解决这个问题,因为我的想法不多了。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。