• QWidget: “Must construct a QApplication before a QWidget”


      最近在做一个关于Qt的项目,在debug版本中没有任何问题,所以就想看看在Release版本下的运行情况,结果在开始运行时,出现如下图1-1所示的错误。在网上搜索答案,大多数是关于QWidget: Must construct a QApplication before a QPaintDevice 的相关问题,搜索了半天也没找到答案,后来还是决定自己根据实际情况及备份来寻找问题根源所在。

      

      与备份进行对比,发现与QWidget相关的变动就是新增加了一个ctkCheckableComboBox实例对象,将ctkCheckableComboBox实例对象进行屏蔽后,发现程序果然可以运行成功,遂锁定目标ctkCheckableComboBox。

      ctkCheckableComboBox属于CTK - The Common Toolkit,CTK相关资源可见http://commontk.org/index.php/Main_Page, 其他不做赘述。在此,ctkCheckableComboBox的使用涉及到了相关的动态链接库,再加上图1-1所示,我进行运行的明明是Release版本,但是图1-1显示的却是Qt5Cored.dll,而Qt5Cored.dll属于Qt的debug版本,因此猜想我在Release版本中用到的ctkCheckableComboBox相关动态链接库应该是debug版本的,后经查证,果真如此。

                 

                  图 1-1

  • 相关阅读:
    vs2010中如何编译dll
    EM图解
    二级指针代替二维数组传入参数
    常見算法的穩定性
    Opencv +vs2010的问题之0x000007b
    Linux C程序设计大全之gdb学习
    makefile学习
    python之如何share你的module
    socket与http的区别
    最完美的单例实现
  • 原文地址:https://www.cnblogs.com/aheng123/p/6375452.html
Copyright © 2020-2023  润新知