我的问题看起来像那样。我有对话窗口,我知道如何从已检查的radiobutton获得结果,但仅在此窗口中。如何将结果带入不同的窗口(主窗口)。
按钮(Pobierz)在主窗口上,靠近此按钮是lineedit2,我想从检查的radiobutton获取结果,但不知道如何。我在这个新的Dialog窗口中创建了lineedit及其获取结果,但我不知道如何将此结果带入mainwindow。希望我解释得足够好。谢谢你的帮助。
void Pobierz::on_pushButton_clicked()
{
if(ui->radioButton1->isChecked())
{
ui->lineEdit->setText("K");
}
if(ui->radioButton2->isChecked())
{
ui->lineEdit->setText("S");
}
if(ui->radioButton3->isChecked())
{
ui->lineEdit->setText("I");
}
}
问候,汤姆。 上一条 我尝试了几种方法,但仍然无法解决这个问题。
答案 0 :(得分:0)
在主窗口中创建一个插槽,该插槽将从对话框窗口中获取单选按钮状态。在此插槽中,根据对话框窗口单选按钮检查状态的结果设置主窗口的lineedit。
在对话框窗口中创建单选按钮时,将单选按钮的clicked
信号与之前定义的主窗口插槽连接起来。
答案 1 :(得分:0)
在对话框的类中,声明一个传递QString的信号。还要覆盖accept函数(如果还没有)。在accept函数中,根据单选按钮发出带有相应字符串的信号。 (别忘了自己调用父接受函数。)
在主窗口的类中,创建对话框时,将对话框中的信号连接到一个插槽,该插槽在主窗口的行编辑中设置文本。当接受对话框时,应触发信号,在主对话框中运行插槽,将相应的文本添加到行编辑中。