基于ARM开发板的QT双屏显示之间的通讯问题

本文详细介绍了在基于ARM开发板的QT环境中,如何解决双屏显示的界面间通讯问题。通过在main.cpp中建立信号和槽的连接,实现了主窗口与子窗口的数据传递。在MainWindow中定义发送数据的信号,子窗口Window2创建接收数据的槽函数,通过QObject::connect进行连接,确保了双屏间的信息交互。示例代码展示了从主窗口向子窗口传递随机数,并在1秒后更新子窗口的显示内容。
摘要由CSDN通过智能技术生成

基于ARM开发板的QT双屏显示之间的通讯问题

一般只有一个界面时,子界面和主界面通讯 可以使用信号和槽函数。
在主界面创建子界面的指针,可以直接调用子界面的槽函数。在子界面创建信号,发送,在修护洁面接收信号,同样可以实现通信。
但在双屏时,就需要把连接建立在main.cpp中才能进行通讯。
在mainwindow.h下创建信号。

signals:
    void   send_data(int );

在按键槽函数发送;

void MainWindow::on_pushButton_clicked()
{
    int a=rand();
    emit send_data(a);
}

在window2.h窗口创建槽函数。

  private slots:
    void  show_data(int );

在window2.cpp中写槽函数。

void  Window2::show_data(int  x)
 {

   QString str= QString::number(x);

     ui->lineEdit->setText(str);
     qDebug()<<"已经执行槽函数";
     //1秒之后显示为厉害
     QTimer::singleShot(1000,this,[=](){

     ui->lineEdit->setText("厉害");
     });

 }

最后再main.cpp中连接一下就行。

 QObject::connect(&w, SIGNAL(send_data(int )), &w2, SLOT(show_data(int )));

我是一开始只写了类型,没带形参,所以这里也不用带。

整个文档见云盘。

链接:https://pan.baidu.com/s/1Ey7p28F8ih1npCkz7BEUJg
提取码:nuli
复制这段内容后打开百度网盘手机App,操作更方便哦

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值