• 4043阅读
  • 4回复

[提问]在B窗体中已经构造A窗体,在B窗体的槽函数中A.show会报错 [复制链接]

上一主题 下一主题
离线北爷vector
 

只看楼主 倒序阅读 楼主  发表于: 2016-06-14
swj2.rar (249 K) 下载次数:1

最后附上我的代码,请大神指点指点!
main(){
   PortSet *f1=new PortSet;
   f1->show();我只能在main()这里打开A窗体,
}
void Dialog::on_portButton_clicked()
{    
    f1.show();若是想点击按钮触发槽函数,在槽函数内写f1.show便会报错,不知何解?
}

离线realfan

只看该作者 1楼 发表于: 2016-06-14
跟踪一下 on_portNameComBox_textChanged触发了吗?
离线北爷vector

只看该作者 2楼 发表于: 2016-06-14
回 realfan 的帖子
realfan:跟踪一下 on_portNameComBox_textChanged触发了吗? (2016-06-14 16:30) 

谢谢,大神,我看了看,槽函数根本没有被触发。
请问大神,为何在main()函数中写 Form *f1=new Form;
这样在同窗体子函数中,比如点击按钮的槽函数中不能用,f1.show()呢?
如果,已经在main()函数中写 Form *f1=new Form;,想点击按钮显示f1,该怎么办呢?
离线realfan

只看该作者 3楼 发表于: 2016-06-15
回 北爷vector 的帖子
北爷vector:谢谢,大神,我看了看,槽函数根本没有被触发。
请问大神,为何在main()函数中写 Form *f1=new Form;
这样在同窗体子函数中,比如点击按钮的槽函数中不能用,f1.show()呢?
如果,已经在main()函数中写 Form *f1=new Form;,想点击按钮显示f1,该怎么办呢? (2016-06-14 17:50) 

把代码片段贴上来,我看一下
离线北爷vector

只看该作者 4楼 发表于: 2016-06-15
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();}
快速回复
限100 字节
 
上一个 下一个