在我的项目中,我有256个PushButtons,我创建了一个函数,将它们全部添加到QButtonGroup中。
void MainWindow::AddBlocksToGroup()
{
QButtonGroup* blockGroup = new QButtonGroup(this);
blockGroup->addButton(ui->Oblock_0, 0);
blockGroup->addButton(ui->Oblock_1, 1);
blockGroup->addButton(ui->Oblock_2, 2);
...
blockGroup->addButton(ui->Oblock_255, 255);
}是的,我知道有更好的方法来做这件事,而不是一次一次,但这使我的大脑更快乐。LOL
稍后在我的程序中(在以后的函数中),我想遍历所有的按钮并为每个按钮更改一些参数。(例如更改文本)
for(int i=0; i<=255; i++)
{
blockGroup->button(i)->setText("Test");
}但是我在循环中为blockGroup获得了一个未声明的标识符。有人能告诉我为什么和/或如何解决这个问题吗?
谢谢你抽出时间:)
发布于 2013-08-26 03:53:10
将QButtonGroup* blockGroup;声明为MainWindow类中的成员,而不是将其声明为void MainWindow::AddBlocksToGroup()的局部变量,这将使以后的成员函数可以访问它。//不要忘记将类QButtonGroup的前向声明添加到MainWindow头文件中
https://stackoverflow.com/questions/18436291
复制相似问题