C++ 制作窗口&x27;每个按钮的文本都是唯一的
如何使一个表单对不同的按钮具有唯一性? 例如:C++ 制作窗口&x27;每个按钮的文本都是唯一的,c++,qt,qt-signals,C++,Qt,Qt Signals,如何使一个表单对不同的按钮具有唯一性? 例如: QVector<QString> text { "Iter FIRST", "Iter SECOND" }; for(size_t i = 0; i < 2; ++i) { Form2 * form2 = new Form2(); //creating form connect(this, &MainWindow::SendCurretIteration, fitr, &a
QVector<QString> text { "Iter FIRST", "Iter SECOND" };
for(size_t i = 0; i < 2; ++i)
{
Form2 * form2 = new Form2(); //creating form
connect(this, &MainWindow::SendCurretIteration, fitr,
&CurrentIterationForm::ShowCurrentIteration);//connect to the second form`
emit MainWindow::SendCurretIteration(text[i]);
QPushButton *btnShowForm = new QPushButton(this);
btnShowForm->setGeometry(i + 40, i + 100, 50, 50);
connect(btnShowForm, &QPushButton::clicked, this, [=]()
{
form2->show();
});
}//end for()
QVector文本{“Iter第一”、“Iter第二”};
对于(尺寸i=0;i<2;++i)
{
Form2*Form2=新Form2();//创建表单
连接(此,&main窗口::SendCurrentIteration,fitr,
&CurrentIterationForm::ShowCurrentIteration);//连接到第二个表单`
发射主窗口::SendCurreteration(文本[i]);
QPushButton*btnShowForm=新的QPushButton(本);
btnShowForm->setGeometry(i+40,i+100,50,50);
连接(btnShowForm,&QPushButton::单击,此,[=]()
{
form2->show();
});
}//结束()
点击每个按钮我看到了什么?
->点击按钮1,国际热核实验堆第二次。
->点击按钮2,国际热核聚变实验堆第二台
如何修复?我错过了这里的“form2”:connect(此,&MainWindow::SendCurrentIteration,form2,&CurrentIterationForm::ShowCurrentIteration)//连接到第二个表单`如果两个按钮都需要一个表单,则需要将
Form2*Form2=new Form2()
从for
循环中取出。不,我想通过单击按钮1查看“Iter FIRST”,通过单击按钮2查看“Iter second”。什么是Form2
?您的设计非常不清楚,插槽CurrentIterationForm::ShowCurrentIteration
在做什么?哪些小部件和布局包含Form2
?您是如何尝试在GUI中首先显示文本Iter的?