选中复选框时,以下代码不起作用。无论复选框是否被选中,它都会跳转到“else”语句。
void MainWindow::runButtonClicked()
{
if (MainWindow::betAllRed->isChecked()==true){
red.didBet=true;
qDebug()<<"bet Red true";
} else{
qDebug()<<"red not checked";
}
}
这里有什么明显的错误还是其他地方的问题? 我需要连接插槽才能获取检查状态吗?
最佳答案
问题在于您访问 betAllRed 复选框的方式。 如果您使用的是设计器,则可以使用 Ui 访问它;
if(ui->betAllRed->isChecked())
如果您使用自己的代码:
QComboBox *betAllRed = new QComboBox(this);
只需使用以下方式访问它:
if(this->betAllRed->isChecked())
关于c++ - QCheckBox->isChecked() 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14089389/