标题:在B窗体中已经构造A窗体,在B窗体的槽函数中A.show会报错
作者:北爷vector
日期:2016-06-14 15:06
内容:
最后附上我的代码,请大神指点指点!
main(){
PortSet *f1=new PortSet;
f1->show();我只能在main()这里打开A窗体,
}
void Dialog::on_portButton_clicked()
{
f1.show();若是想点击按钮触发槽函数,在槽函数内写f1.show便会报错,不知何解?
}
#1 [realfan 06-14 16:30]
跟踪一下 on_portNameComBox_textChanged触发了吗?
#2 回 realfan 的帖子 [北爷vector 06-14 17:50]
realfan:跟踪一下 on_portNameComBox_textChanged触发了吗? (2016-06-14 16:30)
谢谢,大神,我看了看,槽函数根本没有被触发。
请问大神,为何在main()函数中写 Form *f1=new Form;
这样在同窗体子函数中,比如点击按钮的槽函数中不能用,f1.show()呢?
如果,已经在main()函数中写 Form *f1=new Form;,想点击按钮显示f1,该怎么办呢?
#3 回 北爷vector 的帖子 [realfan 06-15 08:54]
北爷vector:谢谢,大神,我看了看,槽函数根本没有被触发。
请问大神,为何在main()函数中写 Form *f1=new Form;
这样在同窗体子函数中,比如点击按钮的槽函数中不能用,f1.show()呢?
如果,已经在main()函数中写 Form *f1=new Form;,想点击按钮显示f1,该怎么办呢? (2016-06-14 17:50)
把代码片段贴上来,我看一下
#4 [北爷vector 06-15 11:41]
Dialog::Dialog(QWidget *parent) : QDialog(parent),ui(new Ui::Dialog)
{
PortSet *f1=new PortSet;
f1->show();
connect(f1,SIGNAL(sendName(QString)),this,SLOT(name(QString)));
我在构造函数里要接受A窗体发来的数据,链接函数里f1是指针,所以不管在。h文件或者构造函数里写 PortSet *f1还是在构造函数里写 PortSet *f1; ,on_portButton_clicked()中不能使用,显示错误是PortSet没有show()函数。但是在构造函数里f1.show()就可以用。我是想点击portButton按钮就可以show窗体A。
}
void Dialog::on_portButton_clicked(){f1.show();}