我想在按下按钮1时显示名为image1的图像,在按下按钮2时显示图像2。为了做到这一点,我想使用'if'语句。我写了以下代码:
if(ui->button1->clicked())
image.load(":/CondScrnIns.png");
else if(ui->button2->clicked())
image.load(":/CondScrnInsCentric.png");
但在执行这些语句时,我收到以下错误:
void QAbstractButton::clicked(bool) is protected
我应该使用clicked()??
进行什么功能答案 0 :(得分:3)
您必须为每个按钮的点击信号和do image.load创建插槽。
connect(button1, SIGNAL( clicked() ), this, SLOT(button1Clicked()));
connect(button2, SIGNAL( clicked() ), this, SLOT(button2Clicked()));
然后在button1Clicked()和button2Clicked()插槽中,您可以输入代码来加载图像或调整对话框的大小。
答案 1 :(得分:0)
您需要在相应的事件处理程序中编写image.load()
语句。您无法在if语句中检查button->clicked()
。