Qt项目实现技术记录
小乌龟在大乌龟背上
这个作者很懒,什么都没留下…
展开
-
Qt/C++ 加载数据库出现qt_sql_default_connection提醒
该警告由于多次调用出现,解决办法如下警告:QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, all queries will cease to work.QSqlDatabasePrivate::addDatabase: dupli原创 2016-07-08 10:45:34 · 9822 阅读 · 1 评论 -
Qt/C++ 数据库SQL 增删改查 语句示例
注:文中例子均使用QSQLITE一,增 QSqlQuery query;query.prepare(QString("INSERT INTO playList%1(songname,songurl,duration)" "VALUES (:songname, :songurl,:duration)").arg(m_objIndex原创 2016-07-10 22:33:17 · 11780 阅读 · 2 评论 -
Qt/C++ 波形图 心电波 实时显示
虽然网上有QCustomPlot类 可以直接使用 ~但还是写一个来玩玩吧效果如下: 这个波形是从左至右滚动的,原理就是不断地更新,绘图,就形成了动态滚动了的效果源码下载:http://download.csdn.net/detail/what951006/9543451原创 2016-06-07 19:39:46 · 15202 阅读 · 2 评论 -
Qt/C++ 模仿 360安全卫士 10.2版本
本着分享的精神写这篇博文。看到帖吧说模仿360有奖的,不竟手痒~写个来玩玩,没打算去争、利用空闲时间,写了有四天时间吧。期间各种找图标资源啊!!有几个没找到~!现在觉得UI设计师才是最牛的!那么些丑陋的png组合到一起就那么漂亮~下面进入正题一,先上效果图: 主界面: 副界面: 副界面: 副界面: 系统托盘...原创 2016-06-04 18:30:44 · 19307 阅读 · 22 评论 -
Qt/C++ Qt多线程竟然不能使用VC的套路
Qt我创建如下代码,在VC下这类似的东西是没有问题的,Qt是不可以的~class MainWindow : public QMainWindow{ Q_OBJECTpublic: explicit MainWindow(QWidget *parent = 0); ~MainWindow();/* * @brief:开始线程,这里是另线程的一起点*/ stati原创 2017-06-24 11:20:41 · 1243 阅读 · 0 评论 -
Qt/C++ 360安全卫士主界面动态按钮demo
一,先上最终效果图 由于制不来gif就只能传个hover状态的了,所以看不出实际效果了 二,主要代码: 1.头文件 #include#include原创 2016-05-31 01:44:38 · 4374 阅读 · 0 评论 -
Qt /C++ 打开文件夹并选中
只适合windows,Qt用这个是个老坑地方。windows是反斜杠,tolocal8bit转到系统编码。 QString strPathName("~~~~"); strPathName.replace('/','\\'); LPCSTR lp=strPathName.toLocal8Bit().constData(); ShellExecuteA(0,"open",原创 2017-06-30 22:31:57 · 3789 阅读 · 0 评论 -
Qt/C++ QRegExp 提取匹配字符串
用于匹配字符串,获取字符串~一个简单的示例QString strTemp="[506,750]<0,0,0>作<0,200,0>词<200,200,0>:<400,200,0>艺<600,150,0>丹\n";QRegExp reg("\\<\\d+,\\d+\\,\\d+\\>");for(int pos=0;pos=reg.indexIn(strTemp,pos),pos>=0; pos+=原创 2017-08-08 14:56:24 · 4260 阅读 · 0 评论 -
Qt/C++ 模仿 酷狗音乐播放器
注:我重新用markDown来编辑文章,所以把以前的博文删掉了~大家的评论没有了,不好意思哈~一,先上图主界面 搜索界面 菜单 模式和音量 托盘菜单 精准歌词 MV 二,遇到的问题 1. 刚开始不知道如何缩放无边框程序,琢磨了许久。。。 2. 播放列表的的那一坨!!不知道怎么搞,但还是被机智的我解决 3. QTableWidget的平滑滚动问题也是个头大原创 2016-12-19 19:05:31 · 30237 阅读 · 131 评论 -
Qt/C++ 定时关机-给女票用的
一, 直接上图: 二,简单介绍 几个月前做的,没什么难度,主要是解决女票想要个定时关机的功能,做了一下午,就不想做了,适合新手练练手。使用了一个快捷键类,单例进程,阴影边框,窗口缩放,动画切换,很是方便。 ps:最好想清楚再运行exe,运行后会注册到注册表开机启动。。 三,分享 源码&exe :更多文章:http://blog.csdn.net/what951006?view原创 2016-12-28 22:37:11 · 3859 阅读 · 5 评论 -
Qt 销毁机制个人理解~
首先了解这些对windows编程有更深入的理解,其实就是从Qt在windwos上就是win32的扩展了一下,一般程序退出后,即使不delete你分配的内存,操作系统也会帮着回收,Qt有着半自动的回收机制,为什么是半自动呢?个人理解如下,Qt中的一切事件,图形等都是经过QObject派生出来的,每一个QObject中都有一个**线性表**,为什么我会这么理解呢?原创 2016-12-25 16:50:05 · 2367 阅读 · 5 评论 -
Qt/C++ QScrollBar漂亮的样式
样式如图正常的状态 光标移动到上面的样式代码如下 QGraphicsOpacityEffect*opacityEffect=newQGraphicsOpacityEffect; this->verticalScrollBar()->setGraphicsEffect(opacityE原创 2016-05-06 17:36:34 · 8262 阅读 · 0 评论 -
Qt/C++ 跑马灯效果
直接上代码合适:头文件classMusicMarqueeWidget:publicQWidget{ Q_OBJECTpublic: explicit MusicMarqueeWidget(QWidget *parent = 0); void setText(const QString &newText) QString tex原创 2016-05-11 09:50:23 · 4249 阅读 · 0 评论 -
Qt/C++ 模态与非模态
经过观察,exec()生成的窗口是模态的,我们暂不考虑设置模态与非模态函数 例:QDialog dlg;dlg.exec();//就会生成模态的,因为exec()内部一直做消息循环,并且接管app的消息循环,就变成了只能操作QDialog *dlg=new QDialog(this);dlg->show()//非模态的,不做解释原创 2016-06-12 10:12:48 · 1011 阅读 · 0 评论 -
Qt/C++ 使用VS2015编译打包发布
使用windeployqt这个命令应该都知道,还有就是进入VS2015的安装路径 C:\ProgramFiles(x86)\MicrosoftVisualStudio14.0\Common7\IDE\RemoteDebugger\x64 你是x64开发的就选x64,要不然就选x86.去把如下运行库拷出来放到exe路径下,要不然去遇到运行库错误,就异常尴尬了!api-ms-win-core原创 2018-04-26 13:37:37 · 2372 阅读 · 1 评论 -
Qt/C++ 实现半模态窗口
网上讲的最多的是模态窗口,但真的很少有讲半模态窗口,半模态窗口怎么理解呢?就是也是模态窗口,但其父窗口可以相应相关的消息循环,父窗口也是可能相应相关的事件的。举个例子:实现模态窗口运行了,但要点击模态窗口才能激活窗口,怎么实现随便点击程序哪里都可以激活程序呢?怎么能实现这种操作? 1,继续于QDilaog 2,调用setWindowFlag(Qt::Tool); 3,QDialog的...原创 2018-06-05 00:12:08 · 1549 阅读 · 0 评论 -
Qt/C++ 音乐播放器源码
Qt5音乐播放器这是本人的第一条博客,排版什么的就将就看吧~一,我还在学生,学Qt来收获很大,至少是明白了Qt这些大大小小的问题1.播放器做的很累人,网上虽有源码,但都过分的简单且不美观。2.基于上述原因 我才打算重新写个玩玩,以后在写程序的时候听着自己做的播放器放的歌,那是相当的苦中带乐啊!!二,好了下面讲如何实现吧 1.先上几张最终效果图:换肤:...原创 2016-04-27 19:06:59 · 26291 阅读 · 11 评论 -
Qt/C++ 项目实战模仿酷狗之实现 换肤(二)
一,先上图还是相当美观的~ 二,实现原理:(一)首先放一个ScrollArea在上面,和播放列表类似,全部东西都放在上面,再对其内部布局即可。 (二)就是真正的皮肤盒子,里这个大小是固定的~至少宽度固定,高度不确定,把高度转换为ScrollArea里面的最小高度,就能显示ScrollBar了,如果不懂的话,可以看看ScrollArea这个怎么用的,皮肤盒子还有一个自动添加图原创 2016-09-25 17:23:14 · 4890 阅读 · 3 评论 -
Qt/C++ 添加pri文件
遇到了,学习一下子~百度了发现好像是大的工程才使用pri来,方便管理,经过学习,于是自己写了一个demo试试可以的~先创建几个工程,再创建一个空白工程,在空白工程里添加QT+=core guigreaterThan(QT_MAJOR_VERSION,4): QT+=widgetsINCLUDEPATH +=$$PWD~ ~ 也就是pri前的目录名如果pr原创 2016-07-01 09:44:35 · 11450 阅读 · 0 评论 -
Qt/C++ 动画 stackedWidget切换动画
一,最近在模仿酷狗界面~遇到的问题~ 先上图吧 这个东西是动态的 意思是切换stackwidget就开始动画。。360的是移动到非当前选中stackwidget就开始动画 二,由于本人天资聪慧!经过半天的摸索~被我解决了这个问题原创 2016-06-17 19:35:40 · 6759 阅读 · 2 评论 -
Qt/C++ qss一些记录
伪状态 描述:checked button部件被选中:disabled 部件被禁用:enabled 部件被启用:focus 部件获得焦点:hover 鼠标位于部件上:indeterminate checkbox或radiobutton被部分选中:off 部件可以切换,且处于off状态:on 部件可以切换,原创 2016-06-16 08:47:00 · 1885 阅读 · 0 评论 -
Qt/C++ 设置背景图片3种方法
方法1. setStylSheet{"QDialog{background-image:url()"}} //使用styleSheet 这种方法的好处是继承它的dialog都会自动设置背景,例如更换皮肤就是一个不错的选择方法2. QPalette pal; pal.setBrush(QPalette::Background,QBrush(QPixmap原创 2016-05-30 16:13:19 · 6011 阅读 · 0 评论 -
Qt/C++ 图片分割~
就是遍历啦~主要函数就是QPixmap的copy函数~voidDialog::splitpixmap(QPixmap&pix,intxnum,intynum){ int width=pix.width()/xnum; int height=pix.height()/ynum; static int y=0; s原创 2016-05-29 21:00:24 · 5639 阅读 · 0 评论 -
Qt/C++ QSlider解决点击不能到该位置问题
方法一:可以继承重写一个QSlider方法二:1.instaneventfiliter(this);slider安装一个事件过滤器 2.在eventfilter(QObject *,QEvent*)中拦截它,很简单吧例子: slider=new QSlider(this); slider->installEventFilter(this原创 2016-05-26 15:33:33 · 4399 阅读 · 4 评论 -
Qt/C++ 网易云api 在线播放音乐
之前用了一个私人的api,没用到1个月就没了,实在烦恼~无意间通过wireshark抓到网易云音乐,然后解析了一下就Okay。解包里有mp3url,就okay了。然后通过加载就okay。至于歌词部分是被加密了的。。实在找不到方法解密。就又调用了一个酷狗音乐的歌词api。一.请求搜索歌曲: QNetworkAccessManager*manger=newQNe原创 2016-05-17 13:00:30 · 6398 阅读 · 0 评论 -
Qt/C++项目实战模仿酷狗之播放列表实现(一)
播放列表的开关界面这是开关界面与添加界面这个可以说是我遇到的最不好做的部分~先说按钮我来画一个图来解释一下就容易看懂差不多这张图片能反映整个播放列表的框架构成。有三层构成。各种细节是很值得人琢磨的。因为Qt的layout并不难用。按钮的作用是控制单个列表的显示与隐藏,并在第二层放一个layout,当隐藏后通过设置第二层高度,来达到类似自适应的现象,最外层就是放了一个Sc原创 2016-09-23 23:32:24 · 6152 阅读 · 1 评论 -
Qt/C++ 跑马灯效果~
话不多说直接上源码.h文件class TextMovingWidget : public QWidget{ Q_OBJECTpublic: TextMovingWidget(const QString str="" ,QWidget *parent = 0); ~TextMovingWidget(); void setText(const QString&);pr原创 2016-10-25 12:50:03 · 7269 阅读 · 1 评论 -
Qt/C++ Lambda 表达式
作用:可以匿名写一个方法,不用在类中写出来,这是一种简单易用的方法1.首先要PRO中加入CONFIG += C++11例:QTimer *timer=new QTimer;timer->start(1000);QObject::connect(timer,&QTimer::timeout,[&](){ qDebug()});powered by 小原创 2016-07-22 15:42:38 · 2431 阅读 · 0 评论 -
Qt/C++ 继承QWidget setstylesheet解决
百度了一下原来是这样~void myMainWidget::paintEvent(QPaintEvent * e){ QStyleOption opt; opt.init(this); QPainter p(this); style()->drawPrimitive(QStyle::PE_Widget, &opt, &p,thi原创 2016-06-01 20:48:44 · 1854 阅读 · 0 评论 -
Qt/C++ 无边框随意拖动改变大小(跨平台版)无BUG!!
一,心路: 这个东西有点难弄,他不是技术性特别强的,主要是繁琐的枚举各种条件发生的情况,网上有可以用的!但无奈只能windows使用,使用nativeEvent(~,~,~),有跨平台的也是N个BUG,难得修复啊~那就自己造呗,经过测试无bug,下面我就上源码~源码下有可以下载的二,源码部分:.h文件#ifndef ABSFRAMELESSAUTOSIZE_H#defin原创 2016-10-16 17:27:36 · 3738 阅读 · 2 评论 -
Qt/C++ QLinearGradient线性渐变使用方法!!少走弯路啊
QlinearGradient 使用细节 是细节 是细节 是细节 是细节 是细节 是细节原创 2016-10-20 20:11:58 · 9448 阅读 · 0 评论 -
Qt/C++ 改变图片亮度算法 注意是算法
由于项目需要。结合网上的资源,提供这几种方法来改变图片亮度。QImage Bright1(QImage &image,int brightness) { uchar *line =image.scanLine(0); uchar *pixel = line; for (int y = 0; y {原创 2016-08-21 18:05:44 · 2754 阅读 · 1 评论 -
Qt msvc编译MT方式编译
经过实践发现,Debug模式下会有大量出错,具体原因是Qt模块之前内存管理的问题,如果使用静态链接的MT模式,没有问题,直接链接到你的项目里面,如果你使用动态的方式并使用MT,模块与模块之间的内存管理就可能出现问题,不一个模块new可能在另一个模块delete,因为不同模块使用的各自的内在管理,这就是使用MD的好处了,一套内存管理,所以,对正在使用msvc编译MT方式生成的开发者,先放弃下这个想法...原创 2018-11-27 17:48:28 · 2436 阅读 · 3 评论