您的位置:首页 > 编程语言 > Qt开发

QT窗体间传值之全局变量

2013-10-13 14:19 204 查看




czh600
首页 专栏 专家 热文

hanxing0的专栏

[原]QT窗体间传值之全局变量

2013-6-13阅读434 评论0

上一次的文章讲到了使用Signal&Slot机制进行窗体间数据的传递。这里介绍另一种方式全局变量进行传值,在上一次的界面中的mainWindow和dialog中分别加入一个Label和LineEdit以及一个pushbutton。效果如:



运行方式为在主界面mainWindow中单击全局变量按钮对全局变量进行赋值,赋值完成后,在Dialog中单击全局变量在LineEdit中显示全局变量的值,可以发现这种方式下可以很容易的反转传递内容。

具体实现为:

在mainWindow.cpp文件中加入:

QString globaldata;         //声明一个全局变量用于窗体间传值

在全局传值按钮的clicked事件中对gloabaldata进行赋值:

void MainWindow::on_globalpb_clicked()
{
globaldata = ui->lineEdit->text();
}

在Dialog.cpp文件中声明外部变量:

extern QString globaldata;

在全局传值按钮的clicked事件中对gloabaldata进行显示:

void Dialog::on_pushButton_clicked()
{
ui->lineEdit_2->setText(globaldata);
}

这种方式,可以看到一些缺点,就是不容易对UI界面进行实时显示,但是这对于一个系统来讲也有一些优势,就是可以方便地将一个系统的配置分配到相关的UI界面中去,但是,同样的,也增加了程序之间的耦合性。

为了节省篇幅,这里不将最后的结果上传上来了, 下一博文,将介绍窗体间传值的另一种方式:public函数接口方式。

上一篇下一篇
请先登录后,再发表评论!
查看评论

更多评论(0)



回顶部


移动版|桌面版

©1999-2012, CSDN.NET, All Rights Reserved
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: