qixibujiabing 2019-11-13 12:02 采纳率: 40%
浏览 894
已采纳

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

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

  • 写回答

4条回答 默认 最新

  • 「已注销」 2019-11-13 17:26
    关注
    void go(){ // 普通函数go
        for (QWidget *w:qApp->topLevelWidgets()) { // 获取顶级窗口
            if (w->objectName() == "QtGuiApplication1Class") // 判断是否是主窗口类名:主窗口类 + Class
            {                                                // 我的主窗口类是:QtGuiApplication1
                QtGuiApplication1* qw = (QtGuiApplication1*)w; // 转换并获取主窗口指针
                emit qw->send("发出信号");  // 然后可以随意操作主窗口了
            }   
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?