• 3994阅读
  • 4回复

[讨论]求助高手  关于窗口间数据传递 几天了 急啊 [复制链接]

上一主题 下一主题
离线xudongenius
 
只看楼主 倒序阅读 楼主  发表于: 2012-02-12
本人程序的主窗口是QmainWindow ,find.h头文件里定义了一个Qwidget   find,用qtCreator在 widget里添加了一个QlineEdit    lineEdit,
mainwindow.cpp中包含find.h


mainwindow中有信号 :signal :send(QString);
成员函数received(QString a){emit send(a);}


find中有slot :get(QString a){b=a;}//b为find类中的私有成员变量QString;
                       ui->linEdit->setText(b);


问题出现了 ,当我在mainwindow中 find *findDialog=new find;新建一个窗口
connect(this,SIGNAL(send()),findDialog,SLOT(get()));
findDialog->show();后 发现lineEdit中还是一片空白
信号、槽 能不能在不同的窗口间传递字符串啊


我试过用static extern等全局变量 不行
甚至将字符串写到外部文件 findDialog独处来也不行 ,因为他第一次正确读出来后,不管文件怎么改他都不变,除非程序关了重启


求高手指点啊
离线ffii4455

只看该作者 1楼 发表于: 2012-02-12
代码放上来吧,我前两天也是在寻求窗口间数据通讯,最后就是用信号和槽解决的。方法和你想的差不多。可能你哪里做错了。还有,你的find窗口是否是模化的?
离线xudongenius
只看该作者 2楼 发表于: 2012-02-12
回 1楼(ffii4455) 的帖子
什么是模化啊?
离线ffii4455

只看该作者 3楼 发表于: 2012-02-12
回 2楼(xudongenius) 的帖子
就是窗口时模态的。。。
还有就是,在信号与槽连接了一个后,你有么有emit信号?
离线xudongenius
只看该作者 4楼 发表于: 2012-02-13
回 3楼(ffii4455) 的帖子
搞定了 传过去了
快速回复
限100 字节
 
上一个 下一个