• 9009阅读
  • 13回复

[提问]求助:QT两个窗体传参问题 [复制链接]

上一主题 下一主题
离线258049189
 

只看楼主 倒序阅读 楼主  发表于: 2012-07-17
求助:QT两个窗体传参问题
我有一个主窗体A,在A上面有一个Button,Button上面有text,点击这个button,将主窗体A隐藏,弹出另外一个窗体B,并且将button的text传递到窗体B, 在B里面编辑了有一个QLineEdit编辑了text,然后回车修改完成,希望能够将这个修改好之后的值传回给之前的主窗体A,然后窗体B关闭,如何做呢??各位示例图如下:

离线roywillow

只看该作者 1楼 发表于: 2012-07-17
B可以继承自QDialog, 其中有两个成员函数:
一个可以由A来调用, 设置这个dialog的显示内容(这一步可以在B show之前执行)
另一个也可以由A调用, 返回其中的内容(这一步可以在dialog发出accept信号后调用)
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线258049189

只看该作者 2楼 发表于: 2012-07-17
回 1楼(roywillow) 的帖子
不行呀,button是属于A的
离线roywillow

只看该作者 3楼 发表于: 2012-07-17
回 2楼(258049189) 的帖子
为什么不行?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线258049189

只看该作者 4楼 发表于: 2012-07-17
回 3楼(roywillow) 的帖子
B不能属于A的子类,否则A隐藏了,B就会自动隐藏了。
B不属于A的子类,那么B在返回值的时候如何能找到A的对象呢?
离线jdwx

只看该作者 5楼 发表于: 2012-07-17
晕!
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线roywillow

只看该作者 6楼 发表于: 2012-07-17
回 4楼(258049189) 的帖子
神马子不子类的啊……父类子类是指类的继承关系……
对于QDialog来说, 它的parent显示与否与自己有关系么?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线258049189

只看该作者 7楼 发表于: 2012-07-17
回 6楼(roywillow) 的帖子
QDialog的显示与父类有关系呀,如果它的父类是隐藏的,它就得隐藏起来
离线258049189

只看该作者 8楼 发表于: 2012-07-17
结帖下,这问题我搞定了,利用窗口B发一个信号,然后A来接收,就搞定了。
离线kingdavid
只看该作者 9楼 发表于: 2012-07-18
招聘QT程序员,有意的请发送简历至1174118090@qq.com
离线jdwx

只看该作者 10楼 发表于: 2012-07-18
回 9楼(kingdavid) 的帖子
招聘有专门的板块。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线huang8579

只看该作者 11楼 发表于: 2012-07-19
回 8楼(258049189) 的帖子
B的信号,A怎么收求解?
我原来做普通\科学型计算器切换的时候,是用extern声明类指针,然后两个窗体互相调用,显示内容设置成全局变量不就得了
离线jasongood

只看该作者 12楼 发表于: 2012-07-19
比如有个槽函数是 A 的button点击
void  button_click()
{
       hide();
       BDialog bdia;
       bdia.setButtonText(ui->button->text());
       if(bdia.exec() == QDialog::Accepted)
       {
               ui->button->setText(bdia.getButtonText());
       }  
}
离线258049189

只看该作者 13楼 发表于: 2012-07-19
回 11楼(huang8579) 的帖子
很好接收呀,B是属于A的一个成员指针变量,B发信号的时候,在A里面connect一下就搞定全局变量还是少用一些比较好,很危险的。
快速回复
限100 字节
 
上一个 下一个