从非成员函数更新MainWindow Qt

时间:2017-04-21 07:13:52

标签: c++ qt

我正在为我的实习在Qt上申请,我遇到了问题。

我的应用程序的目的是通过USB将卡连接到发送CAN消息的计算机上。

我在Visual Studio上用C ++编写了一个应用程序,它接收了这些CAN消息并在回调的帮助下将它们打印在控制台上。

我想知道的是做同样的事情,但使用我之前制作的函数在Qt上使用GUI应用程序(我没有在我的visual studio项目中使用过类)。

将我的Visual Studio项目中的所有.cpp和.h文件添加到我的QT项目中

所以这里是mainwindow.h文件,我没有改变任何东西。我刚在表格上添加了一个textLabel。

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include <QLabel>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

public:
Ui::MainWindow *ui;    
};

#endif // MAINWINDOW_H

main.cpp非常基础。

MainWindow.cpp:

这是打开通讯时的构造函数

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    //Function created in Library.
    open_com(...)
}

open_com打开通信并在每次收到消息时调用回调

回调的定义

void callback (message id )
{
     Here I want to call my TextLabel from my application
}

我在这个应用程序中的问题是我不知道如何从不属于MainWindow类的函数访问我的应用程序。

如果某人已经遇到过这种问题并且有解决方案,我将非常感激!

谢谢。

0 个答案:

没有答案