所以我有一个名为“vboxmain”的主要布局。该程序有两种状态:二十一点和扑克。对于两者,我都有一个按钮。在这个 vboxmain 中,我有一个上部,它涵盖了大部分程序,并且对于两个游戏都是相同的,但我还有一个底部,它应该显示两个游戏的不同部分。例如,扑克游戏应该包含五个 QCheckBox 和一个按钮。至于二十一点游戏,我只需要两个按钮。我将这两个底部布局都创建为 QVBoxLayouts。所以现在我有:
BlackjackiValikud = new QVBoxLayout; //for blackjack
Pokkerivalikud = new QVBoxLayout; //for poker
我尝试创建两个这样的按钮操作:
void mainwindow::BlackJack_clicked(){
vboxmain->removeItem(Pokkerivalikud);
vboxmain->addItem(BlackjackiValikud);
}
void mainwindow::Poker_clicked(){
vboxmain->removeItem(BlackjackiValikud);
vboxmain->addItem(Pokkerivalikud);
}
按钮连接如下:
connect(BlackjackButton, SIGNAL(clicked()), this, SLOT(BlackJack_clicked()));
connect(PokerButton, SIGNAL(clicked()), this, SLOT(Poker_clicked()));
但目前它不起作用,我想不出办法做到这一点,所以我正在寻求帮助。这可能也不是最好的方法,但我不知道其他方法。所以我可以使用一些帮助来了解如何使用任何解决方案来完成这项工作 - 这样我就可以使用这两个按钮根据需要更改我的 vboxmain 的底部。
我对解决方案持开放态度。