![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Qt
wyhang0
这个作者很懒,什么都没留下…
展开
-
qt db 数据库问题
//可能出现插入数据成功,model->insertRecord(-1,record)返回值为false,需要再次判断是否插入成功bool QSqlTableModel::insertRecord(int row, const QSqlRecord &record)...原创 2020-03-25 16:59:29 · 537 阅读 · 0 评论 -
findChildren()
这篇文章标题比较特殊,呵呵,昨天在读别人源代码得时候发现了一个函数 :findChildren(),当时就吸引我了,这是什么意思,翻了下文当终于明白是干什么用得了。在实际得Qt编程过程中,通常会有多个空间嵌套,就比如说:主窗体是QMainWdow,中央挂件是QTabWidget,而每一个QTabWidget子窗口中又有QTextEdit,这样得组合就是经典得多标签页文本编辑器样式,当然这个暑假我也转载 2014-09-12 13:39:28 · 536 阅读 · 0 评论 -
qt中文乱码问题
目录(?)[-]一个简 单的 Qt 程序两种乱码什么时候出现QString 为什么会乱码呢明确概念0明确概念1明确概念2明确概念3QString 工作方式以下是dbzhang关于qt中文乱码问题原因的阐述,觉得不错: 首先呢,声明一下,QString 是不存在中文支持问题的,很多人遇到问题,并不是本身 QString 的问题,而是没有将自己希望的字符串正确赋转载 2014-09-19 13:41:47 · 343 阅读 · 0 评论 -
Qt事件处理(五)
Qt处理事件的第五种方式:"继承QApplication并重新实现notify()函数"。Qt调用QApplication来发送一个事件,重新实现notify()函数是在事件过滤器得到所有事件之前获得它们的唯一方法。事件过滤器使用更为便利。因为可以同时有多个事件过滤器。而notify()函数只有一个。 重新实现的QApplication类MyApplication的头文件myapplicat转载 2014-09-20 22:15:48 · 399 阅读 · 0 评论 -
Qt中使用QSqlDatabase::removeDatabase()的正确方法
如果你用过Qt的QSqlDatabase的话,多半会对下面的警告信息感兴趣:QSqlDatabasePrivate::removeDatabase: connection 'qt_sql_default_connection' is still in use, allqueries will cease to work.意思是说,还有某查询引用默认数据库连接"qt_sql_default_转载 2014-09-24 08:48:16 · 620 阅读 · 0 评论 -
QT存储映射文件
QFile src(QString("/root/a")); if(!src.open(QIODevice::ReadOnly)) { qDebug() return -1; } QTextStream srctext(&src); QFile dest(QString("/root/bak")); if(!原创 2014-09-25 09:11:28 · 2335 阅读 · 0 评论 -
Qt多国语言的实现与切换(国际化)
1、创建语言文件 打开.pro文件,加入以下:TRANSLATIONS+=cn.ts 工具->外部->Qt语言家->更新翻译,将生成翻译文件cn.ts2、编辑翻译文件 启动Linguist(Qt语言家),打开cn.ts,然后进行编辑,主要是将源文对应的译文填写上,最后保存3、部署翻译文件 工具->外部->Qt语言家->部署翻译,将生成转载 2014-10-09 16:43:50 · 556 阅读 · 0 评论 -
qt对所有文字形式的文本使用tr()
qt对所有文字形式的文本使用tr()无论你的程序在哪里对将会呈现给用户的文本使用了"quoted text",要确保它被QApplication::translate()函数处理过。其实做到这一点只需要使用QObject::tr()。例如,假 设LoginWidget是QWidget的一个子类: LoginWidget:: LoginWidget() {转载 2014-10-14 08:46:03 · 911 阅读 · 0 评论 -
Qt 中文显示 QMessageBox按钮中文显示
1,QT中如何显示中文呢?QTextCodec*pCodec=QTextCodec::codecForName("System");//获取系统字体编码QTextCodec::setCodecForLocale(pCodec);QTextCodec::setCodecForCStrings(pCodec);QTextCodec::setCodecForTr(pCod转载 2014-10-14 13:25:20 · 939 阅读 · 0 评论 -
Qt信号量QSemaphore
Qt中的信号量是由QSemaphore类提供的,信号量可以理解为对互斥量功能的扩展,互斥量只能锁定一次而信号量可以获取多次,它可以用来保护一定数量的同种资源。acquire()函数用于获取n个资源,当没有足够的资源时调用者将被阻塞直到有足够的可用资源。release(n)函数用于释放n个资源。 下面通过一个典型用例:生产者和消费者,来实现这二者之间的同步。整个工程就一个main.cpp,文件转载 2014-09-11 10:22:42 · 426 阅读 · 0 评论 -
QT中的多线程编程
QT为多线程编程提供了很多类,其中最重要的就是QThread了,在QT中定义的任何线程都是他的派生类。最重要的就是重写run()函数,因为类的主要功能就是在run中实现,实现的方法是调用start函数,start函数就会自动调用run函数。以下程序是一个简单的多线程程序,主要功能是生成两个线程,每个线程不停的打印自己的相关信息。代码如下:form1.h/**************转载 2014-09-11 10:14:41 · 384 阅读 · 0 评论 -
qt中的全局变量
这一段开发一个程序,需要多个源文件,包括若干个头文件和若干个定义文件。因此如何在多个源程序间开发传递变量就成了一个关键问题。一般来说在多个源程序间传递变量大概有两种方法,一是利用extern声明全局变量来进行传递,二是将全局变量定义成一个类的静态变量,通过类名::变量名进行调用。通过若干次调试,第一种方法终于成功,现将注意要点记录如下:WILD.H文件: #ifndef FORM1_H转载 2014-09-11 10:11:32 · 512 阅读 · 0 评论 -
QDateTime设置硬件时钟(RTC)及系统时钟
#include #include #include #include #include #include void convertDateTimeToTm(const QDateTime &dt, struct tm &tm){ const int wday[8]={0,1,2,3,4,5,6,0}; tm.tm_sec=dt.time()原创 2017-01-05 14:36:50 · 2626 阅读 · 0 评论 -
QT中关闭应用程序和窗口的函数
使用QT编辑界面,其中带来很大方便的一点就是Qt中自带丰富的、种类齐全的类及其功能函数,程序员可以在编辑程序的过程中简单地直接调用。关于窗口关闭的操作,在这里指出常用的三个槽,即quit(),exit()以及close()。首先说明窗口退出时,系统提示对话框的代码编辑。对主程序的退出,可以调用成员函数exit(),同时也可以调用槽quit(),二者此时都能起到关闭应用程序的作用。只是应注意二者转载 2014-08-22 09:29:05 · 660 阅读 · 0 评论 -
ubuntu12.04中安装Qt5.2.0菜鸟经验总结
我的爱机是联想B470,预装了win7系统。为了学习linux下的编程,安装了virtualbox。vmware虽然功能强大,但是找key还是比较麻烦,所以我安装了开源的virtualbox用来跑ubuntu。推荐大家使用这款虚拟机,因为virtualbox现在功能已经很强大了,支持我的ubuntu 客机(guest与win7 主机(host)系统间文件共享,双向复制粘贴,支持3D加速,当然这转载 2014-08-25 13:55:31 · 1479 阅读 · 0 评论 -
Qt实现基本QMainWindow主窗口程序
这个实验用Qt实现基本QMainWindow主窗口先上实验效果图 打开一个文件,读取文件类容详细步骤:1.打开Qt creator新建MainWindow工程右键工程名添加新文件,main文件,后缀自动补全后为main.cpp转载 2014-09-01 14:54:41 · 1079 阅读 · 0 评论 -
Ubuntu Linux 输入法及 Qt 中文安装
1、Linux输入法介绍 Ubuntu上的输入法有Fcitx、IBus(中文环境默认输入法),早期的SCIM(衍生品scim-python)、旧版本的sunpinyin(可以作为IBus模块,也支持OS X)转载 2014-09-04 15:52:54 · 831 阅读 · 0 评论 -
QTextCodec中的setCodecForTr等终于消失了 (Qt5)
目录(?)[-]症结Qt5好消息坏消息参考在Qt4中,国内很多新手都喜欢——不分青红皂白地使用如下3行代码QTextCodec::setCodecForTr(...)QTextCodec::setCodecForCStrings(...)QTextCodec::setCodecForLocale(...)尽管之前零零散散写过一点这方面的内容,比如转载 2014-09-05 15:45:41 · 559 阅读 · 0 评论 -
Qt中translate、tr关系 与中文问题
转自:http://hi.baidu.com/cyclone/blog/item/aa56e5dd1a79f7e176c638be.html题外话:何时使用 tr ?在论坛中漂,经常遇到有人遇到tr相关的问题。用tr的有两类人:(1)因为发现中文老出问题,然后搜索,发现很多人用tr,于是他也开始用tr(2)另一类人,确实是出于国际化的需要,将需要在界面上显示的文件都用t转载 2014-09-09 12:38:47 · 422 阅读 · 0 评论 -
Qt4 Gossip: QMutex 與 QMutexLocker
如果您的程式只是一個單執行緒,單一流程的程式,那麼通常您只要注意到程式邏輯的正確,您的程式通常就可以正確的執行您想要的功能,但當您的程式是多執行緒程式,多流程同時執行時,那麼您就要注意到更多的細節,例如在多執行緒共用同一物件的資料時。如果一個物件所持有的資料可以被多執行緒同時共享存取時,您必須考慮到「資料同步」的問題,所謂資料同步指的是兩份資料的整體性一致,例如物件A有name與id兩個屬转载 2014-09-09 12:52:18 · 406 阅读 · 0 评论 -
QTSingleApplication使用笔记
QTSingleApplication,是Qt官方提供的,用于实现只启动一个实例,并在启动时向另一个实例通信(依赖于QtNetwork模块) 默认情况下,收到消息后会自动激活自身窗口 (一)简单使用:(1)将里面的qtsingleapplication目录拷贝到项目的源码目录中,(2)然后修改项目的.pro文件,加入下面一行代码include(../qtsing转载 2014-10-15 08:42:56 · 1708 阅读 · 0 评论 -
Qt程序进入等待睡眠的正确方法
Qt程序运行的时候等待一段时间, 这段时间里可能程序什么都不做,也可能是在后台开了个子线程在做一些用户看不见的工作。当我们使用使用类似linux提供的”sleep”或”usleep”函数时很容易造成用户无法与程序交互,本文将告诉你一个正确的方法。AD:2014WOT全球软件技术峰会北京站 课程视频发布51CTO编者按:Qt框架是Symbian应用程序开发和M转载 2014-10-15 11:27:09 · 2724 阅读 · 0 评论 -
QTreeWidget的简单用法
QTreeWidget的显示效果与MFC的TreeCtrl控件是类似的,QTreeWidget与QTReeView的本质区别是QTreeWidget面向QTreeWidgetItem,而QTReeView是面向model的。 一个简单的小例子用来阐述QTreeWidget的简单使用。#include #include #include #include #includ转载 2014-10-15 14:36:49 · 524 阅读 · 0 评论 -
QT对摄像头支持
Qt从5.0开始支持android摄像头,但是目前还没有做到统一完全跨平台API。还需要根据不同的平台系统来处理。这是因为Qt中QImage支持格式不全,现在不支持YUV格式。Qt中捕获视频流用两种方式:一、用QCamera::setViewfinder(QAbstractVideoSurface *surface)[cpp] view plaincopy转载 2014-11-22 08:14:05 · 917 阅读 · 0 评论 -
QT+OPENCV环境配置
QT+OPENCV环境配置一. QT的安装1.1 qt-skd的安装安装版本:qt-sdk-win-opensource-2010.05.exe 双击按默认即可完成QT-SKD的安装1.2 添加环境变量我的电脑->属性->高级->环境变量->系统变量”中编辑Path,补上Qt的bin路径“; C:\Qt\2010转载 2014-11-22 10:55:56 · 693 阅读 · 0 评论 -
QT +openCV 实现摄像头采集以及拍照功能
今天写的QT+openCV实现摄像头拍照功能。在网上收罗了很多资料,QT没有专门操作摄像头的类,这个得自己写。网上也有很多关务openCV和V4l的一些介绍,由于我项目要在window下开发,所以就选择了openCV。由于以前没有用过openCV,所以就只看了关于openCVS摄像头操作的这部分,其他的还没时间去看。openCV : http://sourceforge转载 2014-11-22 18:39:27 · 2582 阅读 · 0 评论 -
QString, wchar_t *, TCHAR, CString和其他字符或字符串类型的转换
这篇文章是在Blogspot上看到的一篇文章,能够解决QString, wchar_t *, TCHAR和其他字符或字符串类型之间的转换,方便在使用Windows API的时候转换的麻烦。原文地址:http://tkrotoff.blogspot.com/2010/04/code-snippets-about-qstring-wchart.html//QString to wchar_转载 2015-01-21 13:34:08 · 683 阅读 · 0 评论 -
Qt多线程编程中的对象线程与函数执行线程
近来用Qt编写一段多线程的TcpSocket通信程序,被其中Qt中报的几个warning搞晕了,一会儿是说“Cannot create children for a parent that is in a different thread”,有时候又是“QSocketNotifier: socket notifiers cannot be enabled from another thread”,转载 2015-03-16 15:43:31 · 632 阅读 · 0 评论 -
编译可以执行python的gdb
http://stackoverflow.com/questions/10792844/python-missing-or-unusable-error-while-cross-compiling-gdb转载 2015-03-26 13:46:42 · 1043 阅读 · 0 评论 -
Qt 线程基础(QThread、QtConcurrent等)
qtthreadobject工作多线程任务目录(?)[+]昨晚看Qt的Manual,突然发现下一个版本的Qt中(Qt4.7.4、Qt4.8等)增加了一个特赞的介绍多线程的文章 :Thread Basics注意:该链接以后会失效,但是 到时候你直接看Qt自带Manual就行了本文不是严格的翻译 dbzhang800 2011.06.18使用线程转载 2015-04-27 15:58:42 · 339 阅读 · 0 评论 -
编译qt5
1 Mesa-10.3.5#arm-linuxCC=/opt/arm-4.8.1/bin/arm-none-linux-gnueabi-gcc CXX=/opt/arm-4.8.1/bin/arm-none-linux-gnueabi-g++ ./configure --prefix=/Mesa --target=arm-linux --host=arm-linux --enable-gl转载 2015-09-29 09:37:12 · 2286 阅读 · 0 评论 -
QT 多线程程序设计
QT 多线程程序设计QT通过三种形式提供了对线程的支持。它们分别是, 一、平台无关的线程类, 二、线程安全的事件投递, 三、跨线程的信号-槽连接。 这使得开发轻巧的多线程Qt程序更为容易,并能充分利用多处理器机器的优势。多线程编程也是一个有用的模式,它用于解决执行较长时间的操作而不至于用户界面失去响应。在Qt的早期版本中,在构建库时有不选择线程支持的选项转载 2014-11-12 10:27:16 · 413 阅读 · 0 评论 -
QT生成在Windows下有图标的exe文件(IDE=QT Creator)
我个人十分喜爱QT Creator的IDE界面与操作,但是也许是尚未完全成熟或者是为了代码跨平台,有些功能并没有直接提供。比如Windows下做软件,至少作为主程序或启动程序的exe文件一般都应该有自己的图标,QT Creator虽然可以轻松地设置窗口的小图标,但并没有提供设置exe文件图标的功能。其实做起来并不难。 ·首先当然要准备一个.ico图标文件(假定为my转载 2014-11-12 09:11:11 · 360 阅读 · 0 评论 -
Qt获取组合键
CTRL+Enter发送信息的实现 在现在的即时聊天程序中,一般都设置有快捷键来实现一些常用的功能,类似QQ可以用CTRL+Enter来实现信息的发送。 在QT4中,所有的事件都继承与QEvent这个类,以下是用QEvent来实现快捷键的功能。 首先所有QT类的基类QObject有一个成员函数installEventFilter,这个函数是用来转载 2014-11-05 14:56:10 · 488 阅读 · 0 评论 -
Qwt使用之QwtPlot
qwtQwt目录(?)[+]QwtPlot是用来绘制二维图像的widget。在它的画板上可以无限制的显示绘画组件。绘画组件可以是曲线(QwtPlotCurve)、标记(QwtPlotMarker)、网格(QwtPlotGrid)、或者其它从QwtPlotItem继承的组件。 QwtPlot拥有4个axes(轴线)yLeft Y转载 2014-10-15 16:27:21 · 736 阅读 · 0 评论 -
Qt加载翻译文件(2)
我用的是Qt 4.7.2. Qt的翻译分为三步: 1.运行lupdate,从应用程序中提取所有经tr()标识过的字符串。生成一个后缀为*.ts的文件。 2.使用Qt Linguist翻译这个*.ts。然后用其生成*.qm。 3.在应用程序中用QTranslator这个类加载*.qm文件。转载 2014-10-20 21:44:04 · 664 阅读 · 0 评论 -
QT定时器的用法
定时器的使用非常简单,我们只需要以下几个步骤就可以完成定时器的应用: 1.产生一个定时器 QTimer *time_clock=new QTimer(parent); 2.连接这个定时器的信号和槽,利用定时器的timeout() connect(time_clock,SIGNAL(timeout()),this,SLOT(slottimedone()));转载 2014-10-22 11:17:04 · 571 阅读 · 0 评论 -
Qt网络之获取本机网络信息
本文章介绍在Qt网络中获取本机网络信息,它是英文Internet Protocol(网络之间互连的协议)的缩写,中文简称为“网协”,也就是为计算机网络相互连接进行通信而设计的协议。关于ip就不多解释了。AD:2014WOT全球软件技术峰会北京站 课程视频发布对于IP地址,其实,会上网的人都应该听说过它。如果你实在很不了解它,那么我们简单的说:IP即Inter转载 2014-10-25 21:11:33 · 517 阅读 · 0 评论 -
*.pro、*.pri、*.prf、*.prl等四种文件
目录(?)[+] 转摘地址:http://blog.csdn.net/dbzhang800/article/details/6348432 尽管每次和cmake对比起来,我们总是说 qmake 简单、功能少。但是qmake仍然是一个非常复杂的东西,我想大多人应该和我一样吧:不是太清楚CONFIG等变量到底如何起作用的用过的qmake内置变量和函数不超转载 2014-10-28 10:47:04 · 408 阅读 · 0 评论 -
QtSpeech会让Qt说话
转摘地址:http://qt.csdn.net/articles.aspx?pointid=930&pointid2= 想要多了解QtSpeech,那么随着本文的文字往下走吧!QtSpeech是一个Qt封装的跨平台TTS(文本变成语音输出)API,在不同平台下利用系统自带的TTS引擎。在Windows下使用SAPI, 在Mac下使用SpeechSynthesis,而在Linux下使转载 2014-10-28 10:44:40 · 1068 阅读 · 0 评论