首页 > 其他分享 >Qt 解决:QWidget: Must construct a QApplication before a QWidget

Qt 解决:QWidget: Must construct a QApplication before a QWidget

时间:2024-03-14 15:44:25浏览次数:18  
标签:Qt qt QApplication construct QWidget before Must

  在调试vlc-qt的examples工程时,遇到编译报错“QWidget: Must construct a QApplication before a QWidget”

  根据字面理解应该是,创建窗体前应该必须先构造一个QApplication。网上很多人也遇到过这样的问题,也确实是这个原因,如下:

  但是本人遇到的问题却不是这个,最后查找的原因是vlc-qt库的debug和release版本混用的原因。

  注意了,这里debug库是带d的。

  兼容debug和release编译,qt中可以使用以下写法:

  注意修改完pro文件后,最好先qmake,然后再重新构建。

标签:Qt,qt,QApplication,construct,QWidget,before,Must
From: https://www.cnblogs.com/ybqjymy/p/18073035

相关文章

  • QT事件处理
    这里仅作为个人记录,详细见博客:https://www.cnblogs.com/xiaobingqianrui/p/9547924.htmlQT提供了五种不同级别的事件处理和过滤:    A、重写特定事件处理函数.    最常见的事件处理办法就是重写mousePressEvent(),keyPressEvent(),paintEvent() 等特定事件处理函......
  • Qt QWidget Must construct a QApplication before a QWidget
    1,有些QT写的PC程序在运行的时候,会弹出下图所示的错误提示框 2、原因是因为,在点击程序的关闭的时候,有其它的窗口没有关闭,再次打开造成的,如下图所示,可能的原因是程序启动后,在任务栏在两个图标 3、如下图所示,用鼠标点击关闭其中一个窗口,另一个窗口并没有关闭4、当你再次打开......
  • Qt QObject::killTimer: timers cannot be stopped from another thread
    QObject::killTimer:timerscannotbestoppedfromanotherthread产生原因1定时器的事件处理所处的线程和调用定时器操作(方法)的线程不是同一个线程。2可以通过qDebug()<<QThread::currentThreadId()打印操作时的线程ID。解决思路把定时器的操作(方法:start(),sto......
  • Qt QWidget: Must construct a QApplication before a QWidget
    在使用UI的qwidget之前都必须先构造一个QApplication实例,这是断言的意思。错误的可能是在哪个类中采彩用了静态的(static)的qwidge域或其子类,因为静态和全局对象进入main函数之前就产生了,所以早于main函数里的qapplication日对象,所以出现了此断言错误。解决方法是避免在......
  • Qt 报错: QWidget: Must construct a QApplication before a QWidget
    最近遇到一个问题,程序编译时出现报错:Mustconstructa QApplication beforeaQWidget。我的main.cpp有这样的代码1intmain(intargc,char*argv[])2{3QApplicationa(argc,argv);4}另外一个SS.h1classSS:publicQWidget2{3Q_OBJECT4public:......
  • Qt QToolBox 的常用方法
    在界面上拉一个ToolBox控件,和三个按钮控件:代码如下:1#include"widget.h"2#include"ui_widget.h"3#include<QGroupBox>4#include<QDebug>5#include<QMessageBox>6#include<QToolButton>7#include<QVBox......
  • Qt QToolBox tab 文字居中
    背景:在利用QToolBox实现一个简单的抽屉控件/导航控件时,发现QToolBox::tab的标题总是居左。尝试使用text-align属性、subcontrol-xxx属性都不起作用。解决办法:利用padding属性进行"硬编码"。代码片段如下:1//当前窗口的宽度,其中2//TOOLBOXWND_WIDTH:......
  • Qt 如何搭建Lua的运行环境
    一、Lua简介Lua是一种强大的、高效的、轻量级的、可嵌入的脚本语言。它支持过程(procedural)编程、面向对象编程、函数式编程以及数据描述。Lua是动态类型的,运行速度快,支持自动内存管理,因此被广泛用于配置、脚本编写等场景。二、Lua的优势Lua脚本可以很容易的被C/C++代......
  • Qt6.0开发 第四章 常用界面组件的使用
    第四章常用界面组件的使用在Qt类库中,所有界面组件类的字节或间接父类都是QWidget.QWidget的父类是QObject与QPaintDevice.所以QWidget是多重继承的类.QObject支持元对象系统,其信号与槽机制为编程中对象间通信提供了极大便利.QPaintDevice是能使用QPainter类在绘图设备上绘......
  • QT TCP通信介绍
    QT是一个跨平台的C++应用程序开发框架,它提供了一套完整的工具和库,用于开发各种类型的应用程序,包括图形用户界面(GUI)应用程序、命令行工具、网络应用程序等。QT提供了丰富的功能和类来简化网络通信的开发,其中包括TCP通信。TCP通信是一种可靠的、面向连接的通信协议,它在网络中......