QT中如何实现在普通函数中完成ui数据更新

现自定义了 信号函数、槽函数,打算在普通函数中的某个位置emit 信号,
槽函数中完成ui更新,现在发现在普通函数中无法识别到 信号函数,像这样想
更新ui的情况如何解决呢?谢谢大佬

void go(){ // 普通函数go
    for (QWidget *w:qApp->topLevelWidgets()) { // 获取顶级窗口
        if (w->objectName() == "QtGuiApplication1Class") // 判断是否是主窗口类名:主窗口类 + Class
        {                                                // 我的主窗口类是:QtGuiApplication1
            QtGuiApplication1* qw = (QtGuiApplication1*)w; // 转换并获取主窗口指针
            emit qw->send("发出信号");  // 然后可以随意操作主窗口了
        }   
    }
}

普通函数中无法识别到 信号函数? 你的普通函数跟信号函数是同一个类否? 还有,检查一下声明信号函数是否在signals:下声明的

普通函数是emit不了的,他识别不了这个关键字
你可以再建一个类B,继承qobject,用他的成员函数emit
同时要connect关联这个信号和类A的槽对应起来

Qt编程有的时候不一定非得用信号槽,你现在是一个全局的普通函数,可能是某个回调,你在回调里只要能访问拥有这个槽函数的对象即可
直接像普通函数那样调用也是一样的