![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
qt
那年晴天
汽车行业
展开
-
llinux下编写qt的“helloworld”
这是自己写的一个测试代码。#include #include int main(int argc ,char**argv){ QApplication app(argc ,argv); QLabel label("helloworle"); label.show(); app.exec();原创 2017-03-24 14:40:10 · 694 阅读 · 0 评论 -
Linux下,qt5中使用Qt Multimedia编译时遇到报错
遇到defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer 错误:解决方法:在Linux中,sudo apt-get installlibqt5multimedia5-plugins 可解决详见:https://forum.qt.io/to转载 2017-11-29 11:35:58 · 6461 阅读 · 1 评论 -
Qt之界面出现、消失动画效果
在学习Qt的这2、3个月里,对Qt越发感兴趣,从刚开始的盲目、无所适从到现在的学习、研究、熟练、掌握的过程中,我学到了很多东西,也学会了如何通过自学让自己更加成熟、强大起来,如何更有效地提高自己学习、工作效率。 关于Qt界面的出现消失效果,我简单介绍两种方法。1、 (1)界面出现 将下面这段代码放在界面的构造函数当中就行 //界面动画,改变透明度的方式出现0 - 1转载 2017-11-22 10:10:40 · 3694 阅读 · 0 评论 -
QT 获得屏幕分辨率
在Qt中提供了QDesktopWidget类,提供屏幕的有关信息. 可以这么作: QDesktopWidget *d=QApplication::desktop(); int width=d->width(); //屏幕的宽度 int height=d->height(); //屏幕的高度 或者简写如下: int width=QApplication::desktop()-转载 2017-11-22 10:28:57 · 446 阅读 · 0 评论 -
Qt中的close和closeEvent
对于一个QDialog类的对话框可以用reject()和accept()来控制关闭时的行为。对于QMainWindow而言则可以通过close()信号和closeEvent(QCloseEvent *)函数。当然,这两个都是从QWidget那里继承过来的,所以严格说来只要是Qt控件就都能用,但应该还是对主窗口应用比较多吧。每当点击窗口上方的关闭按钮,就会引发窗口的bool close()响应,转载 2017-11-22 13:38:35 · 12188 阅读 · 0 评论 -
Qt新建线程的方法(四种办法,很详细,有截图)
看了不少Qt线程的东西,下面总结一下Qt新建一个线程的方法。一、继承QThread继承QThread,这应该是最常用的方法了。我们可以通过重写虚函数void QThread::run ()实现我们自己想做的操作,实现新建线程的目的。前面已经介绍了Qthread,这里就不重复了。这种方法,我们每一次要新建一个线程都需要继承Qthread,实现一个新的类,有点不太方便。但是相对于Qrunn转载 2017-11-22 18:39:52 · 1663 阅读 · 0 评论 -
使用类前置声明的好处-结合Qt 4一个主窗口实例讲解
本实例实现一个基本的主窗口程序,包含一个菜单条、一个工具栏、中央可编辑窗体及状态栏。 主窗口头文件代码如下:1 #ifndef MAINWINDOW_H2 #define MAINWINDOW_H 3 #include 4 class QAction;5 class QMenu;6 class QToolBar;转载 2017-12-15 10:23:23 · 335 阅读 · 0 评论 -
QProgressBar水平、垂直样式表两种设置方式
先贴效果图: 水平滚动条:m_PRogressBarHor = new QProgressBar(this); m_progressBarHor->move(50,200); m_progressBarHor->setValue(42); m_progressBarHor->setRange(0,100); m_progressBarHor->setMinimumSize(180,20);转载 2018-01-02 11:55:58 · 1244 阅读 · 0 评论 -
QT——QSignalMapper
1、QSignalMapper类通过自定义信号发送者来捆绑信号。 2、QSignalMapper 类收集一组无参信号,然后以 integer, string 或者 widget为参数重新发送信号,相当于经过QSignalMapper转发后,发送无参信号的类发送的有参的信号。 3、QSignalMapper 类通过setMapping(),支持从特定的字符串或者整数映射到指定的类转载 2017-12-19 10:51:03 · 404 阅读 · 0 评论 -
Qt绘制不规则窗体
Qt在做界面(分QWindow 和QWidget两类)时,不仅仅有windows窗体风格,还有无标题的窗体(实则 去掉了标题栏和侧边滚动条栏).下面是我通过继承QWidget基类,做了一个龙图形的不规则窗体,支持 鼠标左键拖动 和 右键关闭程序 效果如下:实际上窗体中只是画了一个背景透明的图片 /image/dragon.gif 利用Qt的setMask()函数做出遮罩效果。主要代转载 2018-01-03 10:02:13 · 748 阅读 · 0 评论 -
QImage与QPixmap完全解析
用Qt程序在手机上显示一幅图片对编程人员来说是再基础不过的一件事情了。那么先让大家看两段代码://dangerous should not be used, cannot display earth.png, //but if we change earth.png to a smaller image e.g. apple.png, apple.png can be display转载 2018-01-03 10:35:26 · 3907 阅读 · 0 评论 -
Qt的gif与png序列加载方式的比较
最近要用Qt加载点动画,比较了一下,发现用GIF方式的话优点:简单,直接用QMovie。缺点:不能加载大的(面积)gif,否则cpu占用率很高,而且很卡(渲染的效率不高);不支持半透明(要么透要么不透)用png序列的方式:优点:流畅,支持半透明效果。缺点:需要在启动的时候加载所有的图片(只能这样,如果在刷新的时候加载会很卡),这样会导致内存占用率过高,30MB的png图片(转载 2018-01-17 14:27:15 · 1372 阅读 · 0 评论 -
QImage与QPixmap完全解析(加载图片卡顿的原因解析)
用Qt程序在手机上显示一幅图片对编程人员来说是再基础不过的一件事情了。那么先让大家看两段代码://dangerous should not be used, cannot display earth.png, //but if we change earth.png to a smaller image e.g. apple.png, apple.png can be displayedQPix转载 2018-01-18 10:48:15 · 9105 阅读 · 0 评论 -
qt线程退出的一些研究
感觉qt的线程有点坑,好吧,还是自己不太熟悉,今天抽空研究了一下,记录下来。我经常使用的是两种线程:1.继承QThread, 重写run()函数。2.使用movethread()函数。对于第一种,大家应该都比较熟悉,我的做法是在run函数中,通过设置bool值来控制线程的循环当run()函数退出的时候,会发出finished()信号,通过看qt文档,建议是当信号发出的时候,连接到d原创 2018-01-28 11:41:25 · 9168 阅读 · 3 评论 -
defaultServiceProvider::requestService(): no service found for - "org.qt-project.qt.mediaplayer"
在网上有好多关于这个问题的解决方案,不过,都不能解决自己的问题。自己当前的环境是:ubuntu16.04,在网上找了很多,发现有可能是缺少相对应Qt multimedia的环境配置,其实,就是缺少gstreamer的配置,sudo apt-get install gstreamer0.10-*,就可以解决问题了...原创 2018-04-15 10:36:10 · 5050 阅读 · 0 评论 -
Project ERROR: Unknown module(s) in QT: multimedia
Unknown module(s) in QT: multimedia2014-10-02 08:53 本站整理 浏览(9)本文转自:/content/736090.html 向作者表示感谢!在编写串口时遇到了以下问题:Unknown module(s) in QT: multimedia在ubuntu中解决方法如下:sudo apt-get install qtmultimedia5-dev。转载 2017-11-29 11:35:13 · 6724 阅读 · 1 评论 -
vs2015 qt生成的exe文件没有图标(添加到控件上的图标,而不是.exe的图标)
自己在vs2015上使用qt来设计UI界面,程序编译通过,生成可执行文件。放在别人电脑上进行操作的时候,加载的图标老是不见,自己是把图标放在了当前目录下的。可是,显示不出来。测试一下,发现问题:当自己添加图标的时候,弹出当前目录,然后在打开PNG文件夹,里面是自己要添加的图片。在单独拿出来exe文件进行测试的时候,自己是把png直接放在当前目录下的。自己要做的就是把PNG文件夹放在exe文件当原创 2017-11-05 09:30:13 · 3158 阅读 · 1 评论 -
QT中QWidget、QDialog及QMainWindow的区别
QWidget类是所有用户界面对象的基类。 窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己。每一个窗口部件都是矩形的,并且它们按Z轴顺序排列。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。 QMainWindow 类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。主窗口通常用在提供一个大的中央窗口转载 2017-08-04 21:57:01 · 450 阅读 · 0 评论 -
Qt tableview总结
1> tabelview中选取一整行ui->tableView->setSelectionBehavior(QAbstractItemView::SelectRows);2> 获取tableView中当前点击的行号int row = ui->tableView->currentIndex().row();3> 表头信息显示居左ui->tableView->horizontalH转载 2017-09-26 16:26:53 · 924 阅读 · 0 评论 -
qt学习中的一点总结
之前,学习使用过一些qt,但是现在也忘记了,自己现在有在网易云课堂上购买了视频来看,学习了一些,有点心得,记下来吧。其实,qt学习还算是简单,比起来MFC,那可是容易太多了,之前看了半天,还是没发现入口程序在哪里的。而且qt是夸平台的,这是帮了大忙了。其他的学习,应该来说还是控件的学习吧,多了解一些控件的使用。自己干的活就是代码的复制粘贴。可是自己要是写程序的话,感觉自己写不出来,qt的界原创 2017-09-18 22:51:35 · 462 阅读 · 0 评论 -
QT线程出现错误Cannot create children for a parent that is in a different thread
跨线程原创 2017-10-19 15:23:14 · 1806 阅读 · 0 评论 -
QT中QString 类的使用--获取指定字符位置、截取子字符串等
QT中QString 类的使用QString 类中各函数的作用。一、字符串连接函数。1、QString也重载的+和+=运算符。这两个运算符可以把两个字符串连接到一起。 2、QString的append()函数则提供了类似的操作,例如: str = "User: "; str.append(userName); str.appen转载 2017-10-20 15:23:31 · 15831 阅读 · 0 评论 -
qt中的拖拽及其使用技巧
关于qt中的拖放操作,首先可以看这篇官方文档:http://doc.qt.io/qt-5.5/dnd.html一、QDrag首先是创建QDrag,可以在mousePressEvent或者mouseMoveEvent中创建。[cpp] view plain copyvoid DragDropWidget::mousePressE转载 2017-11-06 21:37:45 · 4641 阅读 · 1 评论 -
Qt学习之2D绘图(画刷和画笔)
Qt中提供了强大的2D绘图系统,可以使用相同的API在屏幕上和绘图·设备上进行绘制,主要基于QPainter、QPainterDevice和QPainterEngine这3个类。QPainter执行绘图操作,QPainterDevice提供绘图设备,是一个二维空间的抽象,QPainterEngine提供一些接口。QPainter可以绘制一切简单的图形,从简单的一条直线到任何复杂的图形。QPaint转载 2017-11-06 22:18:34 · 564 阅读 · 0 评论 -
Qt的setMouseTracking使用
bool mouseTracking这个属性保存的是窗口部件跟踪鼠标是否生效。如果鼠标跟踪失效(默认),当鼠标被移动的时候只有在至少一个鼠标按键被按下时,这个窗口部件才会接收鼠标移动事件。如果鼠标跟踪生效,如果没有按键被按下,这个窗口部件也会接收鼠标移动事件。 也可以参考mouseMoveEvent ()和QApplication::setGlobalMou转载 2017-10-23 10:29:36 · 1975 阅读 · 0 评论 -
自定义控件QFrame的一点注意事项
曾经自己需要做过进度条的东西,可是自己却没有找到对应的控件,所以看了qt的二维绘图的知识,原来是需要自己画控件。具体的东西是自己定义一个控件,然后先到窗口上面。画控件的知识网上很多,自己今天记录的是如何把画好的控件显示到窗口上。自己在网上看到过视频,他利用的是QFrame控件。当控件类写好之后,在ui上面选取QFrame,然后右键“提升为”, 把自己定义的类添加到QFrame上,之后,自己控件原创 2017-11-08 22:22:39 · 4613 阅读 · 0 评论 -
This application failed to start because it could not find or load the Qt platform plugin “windows”错
这是一个困扰我很久的问题,关于Qt下生成的exe文件在没有安装Qt的机器上无法运行的问题。Qt是编写C++图形界面的一个很好工具,比MFC来的直观。可是,Qt的安装却是一个让人头疼的事情。早在上个学期,我就在windows XP 系统下安装了Qt 4.8,用破解版的msvc 2010编译。安装过程中出现了多次“configure is not an internal or external c转载 2017-11-01 12:58:33 · 567 阅读 · 0 评论 -
qt 播放音视频遇到问题的解决方法
先说播放音频文件。在pro文件中添加multimedia,然后就是关于播放调用的类。一般是QMediaPlayer和QSoundEffect,其实两者的调用方法调用函数差不多,我使用的是QMediaPlayer类。QMediaPlayer* player = new QMediaPlayer;player->setmedia(QUrl::fromeLocalFile("路径"));play原创 2017-11-09 21:29:28 · 5289 阅读 · 2 评论 -
关于时间戳和QDateTime相互转换的有关问题
1.toTime_t()把2014年12月19日10:24:40这样的QDateTime的格式转变为1418955940这样的时间戳[cpp] view plain copyQDateTime time = QDateTime::currentDateTime(); //获取当前时间 int timeT = time.toTime_转载 2017-10-26 19:16:49 · 3032 阅读 · 0 评论 -
QT中QWidget、QDialog及QMainWindow的区别
QWidget类是所有用户界面对象的基类。 窗口部件是用户界面的一个基本单元:它从窗口系统接收鼠标、键盘和其它事件,并且在屏幕上绘制自己。每一个窗口部件都是矩形的,并且它们按Z轴顺序排列。一个窗口部件可以被它的父窗口部件或者它前面的窗口部件盖住一部分。 QMainWindow 类提供一个有菜单条、锚接窗口(例如工具条)和一个状态条的主应用程序窗口。主窗口通常用在提供一个大的中央窗口转载 2017-11-18 13:35:29 · 264 阅读 · 0 评论 -
qt 关于时间转换(老是多出八小时)
QDateTime qDateTime = QDateTime::fromTime_t(0);QString qsTime = qDateTime.toUTC().toString("HH:mm:ss");自己是想将算好的秒数转换成时间格式的。可是,当自己进行转换的时候,老是多出八个小时,重新创建工程,亦是如此。百度了一下,在进行转换的时候,加上toUTC()就可以了,就是上面的代码。其实原创 2017-11-05 09:07:19 · 2158 阅读 · 0 评论 -
qt widgets 显示视频流,cpu占用率过高
在qt widgets上显示视频,一般是通过paintEvent,或者是qlabel,来显示image。这样的话,cpu显示占用率很高。我发现有两个解决方法:1.显示视频的那个类,设置父类为nullptr,这样,cpu占用率会下降一些;2.显示视频的那个类, 让它继承QOpenGLWidget,这样,在嵌入式设备上面,使用的是gpu渲染,而不是cpu,然后重新使用paintEvent()函数,来绘...原创 2018-06-19 11:20:14 · 9001 阅读 · 5 评论