• 4603阅读
  • 4回复

[提问]请问两个窗口之间用槽的信息传递的问题 [复制链接]

上一主题 下一主题
离线红调
 

只看楼主 倒序阅读 楼主  发表于: 2013-04-02
用QT编程,举个例子,现在有一个窗口A是主窗口,还有一个Qwidget b。
b中有一个lineedit的文字在b窗口被关掉之后要传到a那里去,在a中的lineedit中显示出来。
请问如果有slot的话应该写在a中还是b中,是.h文件中吗?connect语句该写在哪里?是什么样的?
之前用designer自动生成的connect语句都是在ui_***.h中,我觉得我这个需求的connect不该写在那里吧?
感谢!
离线jdwx

只看该作者 1楼 发表于: 2013-04-03
回 楼主(红调) 的帖子
这个需求不需要用到信号和槽
在b.h里声明一个函数
public:
QString text()const;
b.cpp函数体:
QString Dialog::text() const
{
    return ui->lineEdit->text();
}
a类里调用b(假设b是QDialog子类)
    Dialog dlg;
    if(dlg.exec() == QDialog::Accepted){
        qDebug() << dlg.text();
    }
这样就可以了。
发帖时要说明:操作系统、Qt版本、编译器,这样能更快的得到回复。
离线rpdhunter

只看该作者 2楼 发表于: 2013-04-03
可以用信号和槽,connect函数一般都是在父窗口中,当然子窗口中也可以。

总之是很灵活的
离线红调

只看该作者 3楼 发表于: 2013-04-04
回 1楼(jdwx) 的帖子
恍然大悟,万分感谢!
离线红调

只看该作者 4楼 发表于: 2013-04-04
回 2楼(rpdhunter) 的帖子
嗯嗯,我再学习把!
快速回复
限100 字节
 
上一个 下一个