Qt
文章平均质量分 62
OneSea
8年Android/Linux系统开发经验,专注Display&Graphics领域。
展开
-
Microsoft Vistual C++ Runtime Library Runtime Error
0 开发环境 Win10(x64) Qt5.6.2 MiniGW49_321 错误描述 下载MiniGW预编译版本的Qt5.6.2,创建窗口应用程序,然后创建发布包(方法详见《Windows程序安装包制作——Qt Installer Framework》),结果在其它电脑上运行时提示:2 解决方法 曾经试过安装Visual Stud原创 2016-11-18 23:45:42 · 2941 阅读 · 0 评论 -
shell\comdlg32\fileopensave.cpp(9456)\COMDLG32.dll!
1 错误描述shell\comdlg32\fileopensave.cpp(9456)\COMDLG32.dll!00007FFCD579260A: (caller: 00007FFCD579A866) ReturnHr[PreRelease](1) tid(22a8) 80070490 找不到元素。 CallContext:[\PickerModalLoop\InitDialog\F原创 2016-01-06 09:08:07 · 8281 阅读 · 6 评论 -
Qt中对象序列化的实现
参考资料[1]Qt持久性对象进行序列化[2]Qt中序列化对象[3]对象的序列化和反序列化[4]JAVA对象序列化保存为XML文件的工具类原创 2016-01-04 19:45:39 · 9388 阅读 · 0 评论 -
关于Qt信号/槽的参数类型
1 可以使用const参数吗 曾一度认为信号/槽参数如果使用指针/引用,则当信号传输到槽的时候,所传输的指针/引用指向内存已经释放,因此槽接收到的是野指针/无效引用。因此,信号/槽的参数只能使用值传递。 现在才发现上面的认识是错误的。在单线程的情况之下,就算信号/槽使用了引用类型的参数也是允许的。由于是单线程,槽接收到引用时发送信号的函数其实还没结束,因此就算传递过来的是一个局原创 2016-01-16 12:21:52 · 6014 阅读 · 0 评论 -
Qt应用图标
版本说明:Win10(64bit)、Qt5.4.2(64bit)1 制作*.ico图标 由于必须使用.ico格式的图像,因此需要下载一幅普通图像(如adcontroller.png),到这里制作成.ico图标(如adcontroller.ico)。2 编辑*.rc文件 在.pro所在目录中使用文本编辑器创建一个文件adcontroller.rc(可以是其它名称),其内容为:...原创 2015-08-31 14:06:15 · 6207 阅读 · 1 评论 -
QThread中的事件循环
参考资料[1]Qt线程和定时器原创 2015-12-29 09:11:03 · 4197 阅读 · 0 评论 -
Qt中库函数的隐式调用与显式调用
1 背景 在编译QtPropertyBrowser[2]时,只生成了*.dll文件,并没有*.lib文件(可以用于库函数的隐式调用)。那么在编程的时候如何使用*.dll中的函数呢?参考资料[1]给出了答案。2 QLibrary Qt中可以通过QLibrary来实现库函数的显式调用。参考资料[1]Qt调用dll中的功能函数[2]Qt5.4.2编译 qtproper原创 2015-11-26 10:50:37 · 1637 阅读 · 0 评论 -
Qt中的tr()与translate()
参考资料[1]Qt translate tr原创 2015-12-12 00:33:46 · 2660 阅读 · 0 评论 -
Qt C++命名空间
参考资料[1]C++基础积累(1)using namespace potter 自定义命名空间和使用原创 2015-12-11 22:29:01 · 7567 阅读 · 0 评论 -
嵌入式Qt程序启动参数-qws
参考资料[1]qt 程序启动参数 -qws原创 2015-09-01 09:25:36 · 7239 阅读 · 0 评论 -
Qt中的Q_OBJECT
在Qt中,如果一个类要使用信号/槽功能,就必须在其中声明Q_OBJECT,例如Qt5.4.2中QGLWidget说明文档的中的一个例子:class MyGLDrawer : public QGLWidget{ Q_OBJECT // must include this if you use Qt signals/slotspublic: MyGLDrawer原创 2015-11-13 16:56:35 · 6157 阅读 · 0 评论 -
Qt中实现删除文件某一行内容
平常做的最多的是读文件和写文件,但是删除某一行内容的还是第一次,因此在这里做一个总结。原创 2015-10-11 11:05:01 · 18232 阅读 · 2 评论 -
Qt Virtual Keyboard
参考资料[1]QT 软键盘[2]关于qt软键盘的问题原创 2015-09-26 16:23:06 · 17014 阅读 · 0 评论 -
Ubuntu14.04交叉编译Qt4.8.3
1、开发环境Qt版本:4.8.3ubuntu版本:14.04嵌入式cpu:arm9开发版:oampl1382、配置2.1 交叉编译工具链 假设交叉编译工具链已经配置好。2.2 解压 解压qt-everywhere-opensource-src-4.8.3.tar.gz,然后进入qt-everywhere-opensource-src-4.8.3目录...原创 2015-01-07 10:18:59 · 1673 阅读 · 1 评论 -
Ubuntu14.04中编译安装maliit-0.94-qt4
1 开发环境1.1 版本信息 maliit版本:0.94-qt4 Qt版本:4.8.3 Ubuntu版本:14.04LTS 在编译maliit之前,先编译好Qt4.8.3库。配置Qt时要添加-dbus参数(编译dbus模块),详见《Ubuntu14.04中编译Qt库》。1.2 源码 framework-0.94-qt4.zip p原创 2015-10-06 10:57:28 · 1537 阅读 · 0 评论 -
Qt中C++运算符重载
参考资料[1]c++运算符重载总结原创 2015-06-22 20:47:32 · 7747 阅读 · 1 评论 -
C4819:该文件包含不能在当前代码页中表示的字符。请将该文件保存为Unicode格式以防数据丢失
参考资料warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止原创 2015-11-27 08:41:59 · 12374 阅读 · 2 评论 -
U1077:"C:\Qt5.4.2\5.4\msvc2013_64_opengl\bin\moc.exe":返回代码“0x1”
系统:Win10(64bit)Qt版本:5.4.21 背景 在修改一个项目的代码时,突然出现以下错误:2 猜测 应该是Qt的moc.exe出了问题。于是新建一个简单的Qt应用,编译正常通过,并可执行,因此这个猜测不对。3 解决 后来检查自己修改过的地方发现,在宏定义中我使用了数字开头,因此导致这错误!解决方法自然就是将使用数字开头的宏定义改掉。原创 2015-12-04 23:01:12 · 4487 阅读 · 0 评论 -
Qt Error:can not find -lGL
Linux中用QtCreator编译遇到“can not find -lGL”错误的解决方法。原创 2016-11-12 00:44:27 · 1058 阅读 · 1 评论 -
Qt Creator添加/查找槽错误
版本说明:Win10(64bit)、Qt5.4.21 错误描述 在UI界面中右击控件,然后选择“转到槽”,提示错误如下:参考资料[1]原创 2016-01-15 21:34:57 · 10395 阅读 · 8 评论 -
Ubuntu14.04编译Qt4.8.3
1、配置1.1 脚本 编写一个配置脚本,内容如下:echo -e "o\nyes" | ./configure -prefix /home/liyihai/es/qt4.8.3_x86 -no-gtkstyle -webkit 说明:-webkit选项,表示将webkit模块也一起编译[1]。 使用以下命令使得可执行:ubuntu $ sudo chm原创 2015-01-06 11:19:43 · 2473 阅读 · 1 评论 -
Qt Creator 2.8.1 + Qt4.8.5 + VTK-5.10.1
计算机系统:Win7 编译器:Microsoft Visual C++ Compiler 2010 Qt版本:Qt 4.8.5 VTK版本:5.10.11 Qt安装 参考《Win8.1 + MinGW4.4 + Qt Creator 3.3.2 + Qt 5.2.1》。2 VTK编译&安装 参考《VS2012编译安装VTK-...原创 2015-04-22 15:22:26 · 2217 阅读 · 0 评论 -
QVTKWidget与Qt5.5.0以后版本不兼容!
1 开发环境 Win10(64bit) Qt5.6.0(64bit) VTK-7.0.0(64bit)2 问题描述 本人使用VTK6.3.0+Qt5.4.2+MSVC2013的组合,使用起来比较顺利。然而升级系统后,Qt5.4.2总是提示未知系统版本。更加重要的是MSVC2013不支持数组类内初始化。因此想换新版本的Qt与编译器(MSVC2015)。原创 2016-03-09 20:34:29 · 6759 阅读 · 3 评论 -
Qwt的安装与使用
参考资料[1]WIN7 下 Qt Creator 安装 QWT原创 2015-08-25 11:48:16 · 2528 阅读 · 0 评论 -
QObject::connect: Cannot queue arguments of type ‘XXX‘
1 开发环境 Win10(64bit) Qt5.4.2(64bit)2 错误描述 在不同线程之间通过信号/槽来传递自定义数据类型QList的时候,提示错误:QObject::connect: Cannot queue arguments of type 'QList'(Make sure 'QList' is registered using qRegist原创 2016-04-07 01:35:53 · 8206 阅读 · 4 评论 -
Qt中读写xml文件
参考资料[1]Qt XML读取写入操作[2]Qt解析XML文件(QDomDocument)原创 2016-04-02 08:52:33 · 6781 阅读 · 0 评论 -
LNK1104:无法打开文件"\.obj"
1 开发环境Win10(64)Qt5.6.0(64)MSVC 2015(64)2 错误参考资料[1]LINK : fatal error LNK1104: 无法打开文件“.obj”,新人求助![2]无法打开输入文件 .obj原创 2016-03-09 09:46:31 · 18848 阅读 · 1 评论 -
read access violation at:0x0, flags=0x0(first chance)
1 版本说明 Win10(64bit)、Qt5.4.22 错误描述 在在一个多线程的用中,出现下面错误:3 解决方法 经过排查知道,上述错误是由于多个线程同时访问相同的变量,因此只要添加读写锁即可。原创 2016-02-23 20:09:42 · 3221 阅读 · 0 评论 -
不能将“this”指针从“const XXX”转为“XXX &”
1 版本说明 Win10(64bit)、Qt5.4.22 错误说明3 解决方法 出现上述错误的原因是在const成员函数中调用了非const成员函数,因此只要将所调用的函数都改成const函数原创 2016-02-23 23:37:27 · 8338 阅读 · 0 评论 -
QWidget: Must construct a QApplication before a QWidget
1 开发环境 计算机系统:Win10(64bit) 编译器:MSVC2013(64bit) Qt:Qt5.4.2 Qwt:6.1.22 问题描述 最近做项目,使用Qt+Qwt,编译的时候提示:Must construct a QApplication before a QWidget3 解决方法 根据参考资料[1][2]的说明,这原创 2016-03-29 23:26:26 · 2050 阅读 · 1 评论 -
qt.network.ssl:QSslSocket: cannot resolve SSLv2_client/server_method
1 问题描述 在Ubuntu14.04.2(64bit)中安装Qt5.5.1(64bit)时,提示如问题:2 解决方法 由于上述问题并没有有影响正常的安装,因此没有着手去解决原创 2016-03-03 23:24:04 · 4356 阅读 · 1 评论 -
Win10中使用MinGW编译Qt5.5.1
参考资料[1]在Windows环境下使用MinGW编译Qt 4.8.6原创 2015-12-06 20:01:44 · 6133 阅读 · 3 评论 -
Ubuntu14.04中编译安装maliit-0.99.0
1 背景2 编译framework2.1 错误2.1.1 描述Project ERROR: libudev development package not found2.1.2 解决方法 根据参考资料[1]的说明,当前ubuntu系统缺乏libudev库,因此执行下面的命令进行安装:sudo apt-get install libudev-dev 然而事情并没有原创 2015-10-02 15:58:33 · 2145 阅读 · 0 评论 -
Qt4 inputpanel 升级改造
1 背景 Qt4源码中提供了一个inputpanel例程,包含了一个数字虚拟键盘。本文的目的在于将其改造成支持英文字符输入的键盘。2 添加QPushButton参考资料[1]原创 2015-10-01 18:02:53 · 2024 阅读 · 1 评论 -
QLineEdit使用方法
再MFC编程中个,可以将输入框与某种类型的变量(如int型)绑定,此后只能输入此类型的值。 那么,在Qt编程中,如何使得QLineEdit也有类似的效果呢?方法是设置QLineEdit的Validator,具体有不同的形式。1 正则表达式 根据参考资料[1],可以使用下面的形式。QRegExp regx("[0-9]+$");QValidator *validator原创 2015-05-01 08:57:09 · 3678 阅读 · 0 评论 -
QSplitter使用方法
1 QSplitter的用途 QSplitter使得用户可以通过拖动子窗口之间的边界来控制它们的大小,例如2 QSplitter的添加方法 QSplitter的添加方法有2种:a)通过Qt Creator的界面设计工具添加;b)直接使用C++代码添加。其中,方法a最为直观和方便,本文将重点介绍这种方法,而方法b可以见参考资料[1]。3 通过Qt Creator添原创 2015-04-26 22:17:35 · 14760 阅读 · 3 评论 -
Qt Creator窗口布局
参考资料[1]QT控件大小随窗口变化原创 2015-04-27 15:04:42 · 6782 阅读 · 0 评论 -
Qt命名规则
1 控件变量命名实例 以下控件命名方法来自与Qt5.2.1版本的教程“application”QMenu *fileMenu;QMenu *editMenu;QToolBar *fileToolBar;QToolBar *editToolBar;QAction *newAct;QAction *openAct;QString curFile;QPlainTextEdit原创 2015-04-28 15:02:31 · 6333 阅读 · 0 评论 -
Qt多界面编程
参考资料[1]Qt如何实现多窗口调用原创 2015-04-28 20:23:18 · 2011 阅读 · 0 评论 -
QToolBar使用方法
使用Qt Creator创建GUI程序时,主界面中默认包含了QToolBar,QStatusBar和QMenuBar控件,如下图所示 QToolBar中的工具按钮使用QAction来实现,由于其添加方式并没有QMenuBar的菜单那么直观和方便,这里进行重点的介绍。 在Qt Creator设计界面的中下部,是Action编辑器,点击其上方的“新建”按钮即可添加QActi原创 2015-04-26 22:31:51 · 8902 阅读 · 0 评论