- 博客(45)
- 收藏
- 关注
原创 Qt5使用Poppler库解析中文PDF文件
参考文章:https://blog.youkuaiyun.com/chy555chy/article/details/51613545开发环境:Windows 10、Qt 5.9.1、Qt Creator 4.3.1、MinGW 5.3.0Poppler开源库,下载地址:https://poppler.freedesktop.org/已经编译好的Poppler库下载地址:https://sourceforge.net/projects/poppler-win32/我选择下载已经编译好的P
2021-03-07 00:09:20
10331
39
原创 由Q_OBJECT引起的undefined reference to vtable for "xxx::xxx"问题
问题描述:某一个类中如果加入Q_OBJECT后,则link时提示:undefined reference to vtable for "xxx::xxx"。可是删掉后运行程序时在Qt的应用程序输出中又会显示Object::connect: No such slot XXX::XXX()。
2014-05-10 16:25:50
6664
10
原创 XAMPP3.1.0中Apache2.4.3的多站点配置(vhost/virtual host)
最近想在Apache2.4.3上挂载多站点,可是怎么都不成功。我使用的是同一个IP、不同名字的方法(也叫Name-Based方法,另外一种方法叫IP-Based)。也就说本机IP都是127.0.0.1,但是访问localhost、www.a.com、www.b.com时,所指向的网站目录不同。 最终要实现的指向是:127.0.0.1 ==> D:/xampp/htdocs/xampp
2013-09-10 23:33:09
9262
转载 Qt运行一个实例进程
在开发项目的工程中,我们经常希望只运行一个相同的Qt实例进程。当然也可以像类似QQ那样,同时登录多个不同的账号!为了避免这个问题,介绍以下几种用法,每一个解决方案都适用于特定的情况,所以必须尝试和适用合适的解决方案。一:使用QLocalSocket 方式:首先一个新的实例启动时,将尝试连接到同一个本地服务器,如果连接失败,则表示第一个实例进程,创建一个本地服务器。否则,进行退
2013-09-09 21:19:59
5297
转载 Apache多站点配置、多虚拟目录、多端口(终极篇)
转载自:http://www.onexin.net/?p=706Apache同样具有多站点设置的功能,这种设置也是基于配置文件(x:\Apache\conf\httpd.conf),相比起来也并不复杂,同IIS设置多站点一样,Apache也具有使用类似主机头进行多站点设置的功能,实际上称为网站别名,只要在配置文件中的最后一行输入如下内容即可,一、多个站点设置,NameV
2013-09-09 21:13:30
3180
原创 使Qt程序在Windows系统中仅运行一个实例
有时候我们想让程序仅运行1次,即只有一个实例生成。在Windows平台下,可以通过在main.cpp中添加CreateMutex函数来实现: 首先在main.cpp中添加调用windows API的函数:#ifdef Q_WS_WIN#include #endif 接着在main()函数中添加://检测是否只运行了这一个实例 #ifdef
2013-07-29 22:42:27
3695
2
原创 宝可梦火红存档修改器
花了好久的功夫,终于把宝可梦火红的存档修改器编完了。实现了包括训练师姓名、ID、金钱、宝可梦种族、技能、物品等属性的修改。我把宝可梦火红的GBA文件、模拟器,还有我编写的修改器都打包上传到百度网盘了。下载地址:http://pan.baidu.com/share/link?shareid=2853712096&uk=4128141257(图片问题已解决) 开始自己只是偶然心血来潮,想玩一下小时候玩的游戏。编到后来,反而对游戏本身不怎么感兴趣了,呵呵。。。只想练习下C++二进制文件的读写和用Q
2013-07-17 20:17:23
26206
39
原创 在windows下的QT编程中char*与QString之间的转换
Qt4.7+Mingw+QtCreator+win7。源文件使用ANSI编码(Qt中选择"System编码")。为解决中文乱码问题,在Main.cpp中添加: QTextCodec::setCodecForTr(QTextCodec::codecForName("GBK")); QTextCodec::setCodecForLocale(QTextCodec::codecF
2013-04-27 13:35:54
1135
原创 在Qt中使用WindowsAPI来控制其他应用程序
有时候我们可能想要让一些桌面应用程序自动地执行一些操作,但是这类程序又没有提供一些批量操作的方法或者编程接口。这时最容易的办法恐怕就是使用WindowsAPI来模拟鼠标或键盘的动作来操作这类应用程序了。 假设我们想操纵的应用程序是一个上传文件到网络的程序,整个流程是:登录--->选择要上传的文件--->填写文件信息--->上传。原本这个程序一次只能选择一个文件,只能填写一个文件的信息,只
2013-04-27 13:20:08
13953
7
原创 用dumpcpp工具生成的excel.h/excel.cpp来操纵Excel
上一篇:在Qt中用QAxObject来操作Excel 1.系统环境:Qt 4.7+MinGW、Win7、QtCreator、Excel 2007 2.生成excel.h、excel.cpp、office.h和office.cpp dumpcpp ---- ActiveQt模块的命令行工具,可以导出Qt能识别的COM组件的接口。这个工具在Qt
2013-04-08 19:33:04
13907
22
原创 对滚动区域QScrollArea用法的摸索(2)
上一篇:对滚动区域QScrollArea用法的摸索 上个月写了一篇对滚动区域QScrollArea用法的摸索,当时时间仓促,自己测试成功了,就把我的方法写上去了。收到网友pjangel007 的留言,说放在QScrollArea里的控件iconEditor的sizePolicy属性设为Expanding也可以。抱着严谨的态度我又新建了个工程实验了一下。 我用的是
2012-05-14 19:45:05
19329
原创 Qt+FFMPEG编写适合自己的批量视频转换程序
由于在帮人做视频批量转换的工作,所以很需要一个专用的批量视频转换程序。它能够从一个目录中读取要转换的视频,添加水印并转换后自动保存在另一个目录。且输出目录和源目录的子目录结构要相对一致。例如源目录为G:\source\,所有的视频都保存在里面,源文件目录为:G:\source\video1\test.mp4。如果要求输出文件都保存在G:\output\那么转换后的文件就要保存在G:\output\
2012-04-26 22:54:52
5484
9
原创 Qt加载翻译文件(2)
我用的是Qt 4.7.2. Qt的翻译分为三步: 1.运行lupdate,从应用程序中提取所有经tr()标识过的字符串。生成一个后缀为*.ts的文件。 2.使用Qt Linguist翻译这个*.ts。然后用其生成*.qm。 3.在应用程序中用QTranslator这个类加载*.qm文件。 要用lupd
2012-04-23 11:28:01
16725
转载 Qt设置全局文字大小
#include #include "pictracking.h"#include int main(int argc, char *argv[]){ QApplication a(argc, argv); //加载中文翻译 QTranslator qtTranslator; qtTranslator.load("orbitEdito
2012-04-22 02:46:56
7562
原创 在Qt中用QAxObject来操作Excel
下一篇:用dumpcpp工具生成的excel.h/excel.cpp来操纵Excel 最近写程序中需要将数据输出保存到Excel文件中。翻看《C++ GUI Programming with Qt 4》(Second Edition)发现可以在Qt中运用ActiveX控件,这真是太好了。 看了很久教程也没有学会,毕竟是新手,平时也没学过ActiveX编程。一些在
2012-04-03 00:50:39
60422
14
转载 在windows下的QT编程中的char*,wchar_t*与QString之间的转换
转自http://hi.baidu.com/zj41342626/blog/item/3650cd82a381e9b00cf4d2c9.html//QString to wchar_t: const wchar_t * encodedName = reinterpret_cast(fileName.utf16()); //QString to char * (general case):
2012-04-02 23:07:24
23886
1
原创 对滚动区域QScrollArea用法的摸索
好久没用Qt了。最近在为单片机驱动电机运动的小制作做轨迹生成程序。发现《C++ GUI Programming with Qt 4》(Second Edition)这本书中的Icon Editor这个例子很合适做我那个程序的轨迹绘制面板,就直接拿来用了。 我在IconEditor的外部实现了对IconEditor进行放大和缩小的函数。随着编写的进行发现如果我将IconEditor
2012-04-01 21:28:58
21950
原创 S60v5 编程环境的搭建(2)
以前自己也尝试过在搭建Windows XP下搭建Symbian S60v5系统的编程环境。(那一次也是花了不少气力~~~)怎么说呢,其繁琐的安装过程,缓慢的模拟器,十分不熟悉的IDE环境,都让人很不舒服。于是我很快投入了Qt的怀抱。Nokia Qt SDK的安装就相对方便很多,编译器运行也快。用Qt Creator的确是能很快上手开发出自己想要的小东西:)不过它也有美中不足的地方——不是所有安装S
2011-12-09 23:39:41
2414
原创 还有好多东西不会呀~~~
这些天考试来临,复习累了,上QT中文论坛溜了一圈,好多好东西出来了呀!看着论坛里的那些问题,自己也好多不会呀。学了这么久Qt基础还没学完,不行,我要加快速度!!!当然,得先考完试,呵呵。。。不知道大家是不是看见网上各种新奇的技术就头脑充血,总想赶紧试试?或者想赶紧跟上时代的脚步?还记得原来刚学电脑的时候,对重装系统充满热情。呵呵,只要是出了新系统,巴不得马上就试试。现在看来,完全没有必要了
2011-11-22 23:35:00
907
转载 Expected build key “Windows msvc release full-config” got “Windows mingw release full-config”
Expected build key “Windows msvc release full-config” got “Windows mingw release full-config”刚刚安装自己写的一个插件时时遇到的问题,原来Qt SDK for Windows的两部分是由不同编译环境编译而成,QtCreator是由msvc编译,Qt库是由mingw编译。解决方法有以下几种:1) 下载
2011-10-22 17:31:57
2913
转载 QString转char*
QString t="test";QByteArray tArray=t.toLatin1();char *tChar=tArray.data();
2011-10-19 16:04:13
945
转载 QString 与中文问题
转自 dbzhang800 的 http://hi.baidu.com/cyclone/blog/item/9d7293130e5a498d6538dbf1.html看过后会对Qt的编码问题理解得更好! QString 与中文问题2010-07-11 17:0
2011-10-16 17:39:48
1231
转载 字符集与编码问题小结
转自:dbzhang800的 http://hi.baidu.com/cyclone/blog/item/d299af51e04aed868d543064.html小结得好好呀! 字符集与编码问题小结2009-07-15 19:57写在
2011-10-16 17:36:03
980
原创 在QtCreator中运用promote to(改进法)创建自定义控件
在Qt中可以使用改进法和插件法创建自定义控件。我安装的是NokiaQtSDK,按照书里(《C++ GUI Qt 4编程(第二版)》P89)的方法使用插件法时,QtCreator怎么都检测不到自定义的插件。网上说是目录错了,我将其移动到各种目录都没法成功。有时在Qt设计师中可以看到
2011-10-16 09:32:39
9586
1
原创 从"QQ同步助手"上导出的短信文件*.csv中读取短信,并运用在Qt程序中
登陆"QQ同步助手"的网页,我们可以将里面的短信信息批量导出到本地存为*.csv文件。该文件可以用Excel打开,看到里面的短信信息。 在用Qt编写一个小程序的时候我想提取这里面的短信信息。作为一个小程序来说,不管是用连接数据库的方式打开该文件,还是使用与平台相
2011-10-15 19:40:55
5570
原创 Qt加载翻译文件
首先用Linguist打开程序,制作程序的语言包。这里我直接用的Qt内置的语言包"qt_zh_CN.qm"。 然后在main.cpp中加入头文件: #include 最后,在main()函数中添加如下语句:
2011-10-15 18:50:20
2570
原创 写小计时器时犯了个很傻的错误。。。(好傻啊:P)
前段时间写了个小计时器程序。专门与PPT配合,在比赛中使用。 开始计时后,会触发一个函数。当检测到前后两次调用的时间差为1秒时,就自动更新程序上显示时间的数字图片。选择用图片是因为我觉得比较美观,实现起来又方便。毕竟是个小程序嘛。然后我把QTime类的计时器放在
2011-10-15 18:42:01
964
转载 QString QDateTime::toString ( const QString & format ) const
QDateTime类的QString toString ( const QString & format ) const 函数用于格式化时间输入非常好。例如:QDateTime::currentDateTime().toString("yyyy年MM月dd日 hh:mm:ss
2011-10-15 18:23:12
22247
原创 Qt实现当鼠标移动到窗体上,窗体由半透明变为不透明
Qt4.7中可以设置窗体的透明度。下面的方法让窗体实现当鼠标移动到窗体上,窗体由半透明变为不透明的效果。 首先我们在窗体初始化函数中设置窗体属性: setWindowFlags(Qt::WindowStaysOnTopHint); //
2011-10-15 18:13:30
3113
原创 Qt创建以图片为背景的不规则窗体
Qt可以通过重载 void paintEvent(QPaintEvent*) 的方式创建自己想要的窗体。 首先设置窗体的属性: setWindowFlags(Qt::WindowStaysOnTopHint | Qt::Frameles
2011-10-15 17:43:32
1898
原创 在Qt编写的程序中打开文件夹
我们知道在dos命令行中可以用"start explorer 地址"的格式打开指定的文件夹。在编程中使用system函数然后再调用前面那句,虽然可以打开指定文件夹,但是总会有dos的黑框闪过,很不美观。 下面讲讲在Qt中我使用的方法。以打开程序当前目录为例。这里要用到QPr
2011-07-26 11:55:28
18745
4
原创 让drawText绘出中文
用QPainter类的drawText函数可以很方便的绘制英文字符,但是中文却是乱码。这是字体库没有正确加载的缘故,可能是字体库不存在,或程序无法识别。我的解决方法如下: QPainterpainter(this);painter.setFont(QFont(QString::fromLocal8Bit("宋体"),50,-1,false));painter.drawText(160,160,211,204,Qt::AlignHCenter|Qt::AlignVCenter,QStri
2011-05-28 11:07:00
16311
原创 在Qt Creator新建的工程中获取指针坐标
<br />在Qt中文论坛看到一篇帖子,教大家怎么在窗体中获取指针的坐标。下面是他的源码(原页面找不到了,不过还是谢谢这位坛友):<br />//MouseEvent.pro#-------------------------------------------------## Project created by QtCreator 2011-03-29T10:00:44##-------------------------------------------------QT
2011-04-09 01:04:00
3365
1
原创 为Qt程序配上漂亮的桌面图标
Qt的跨平台功能很强大,但是它还没有一个可以跨平台的显示桌面图标的方法。于是默认情况下,用Qt Creator生成的程序都是Windows默认的命令行图标。那怎么修改呢?在Qt Designer里面修改是没用的,那里显示的是程序运行时左上角的小图标。 在Windows下的正确方法是: 1.首先要有一个windows程序图标文件,比如logo.ico。这个文件一般32x32像素就行了。最好用专用的图标工具生成,否则可能会不能用。我是按照英文文档里的方法,用Visual C++ 6.0生成的
2011-04-04 18:20:00
8196
2
原创 拥有进制转换(Two's complement,支持负数)功能的My Calculator 1.3完成啦!
刚刚终于把自己的Qt进制转换程序完成了。这是第三个版本。除了二、八、十、十六进制转换外,还可以进行加减乘除、乘方、开方、求余、指数、对数、正反三角函数运算。C++标准库里常见的运算全搬上去了。这多亏了我的手机Nokia5230支持浮点运算,不然,这些函数我还真不知道怎么在实现。室友的手机就没有浮点运算功能,所以他自己写了这些乘方、开方的类。想想我还是蛮取巧的:P不过本身就是为了熟练下Qt嘛,也不是为了锻炼自己算法。 截几张程序在模拟器中运行的图: Former Calculation
2011-04-04 16:51:00
1843
原创 初尝NokiaQtSDK
上次才抱怨过Nokia S60系统的SDK做得不好。后来自己重装系统后,换了个方式,改用Nokia Qt SDK了。反正我的5230安装插件后也支持Qt,就可以满足我在自己的手机上开发小东西了:) 安装还算容易,基本一路“下一步”。然后随便写了HelloWorld,一运行,模拟器就自动打开了,真是太方便了。比S60_5th_Edition_SDK的效果好多了。运行流畅多了。界面也漂亮了。终于又让我有了在S60v5上开发点自己用的东西的冲动:P 刚开是接触Qt的时候不知道选什么SDK包
2011-04-02 21:29:00
1084
原创 让非商业版的Qt编译的程序在任何电脑上运行
<br /> 程序用release版本发布后,在其根目录下加入以下四个文件:QtCore4.dll、libgcc_s_dw2-1.dll、QtGui4.dll、mingwm10.dll,就可以在其他电脑上运行了。如果程序提示还缺什么,就在Qt SDK的bin目录里找吧。找到后复制到程序的根目录即可。这四个文件加起来有11.2MB确实有点大,但是这种方法还是比较简便的。<br /> 对于网上说的什么静态编译的东东,我试了很多次都没成功。。。要是有人将整个过程演示给我看看就好了:P
2011-02-06 18:13:00
1860
原创 没有合适的构造函数可用??
<br /> 最近又在看《C++ GUI Programing with Qt 4》(Second Edition),按照里面的里面的例子做着。我没有按照书里的步骤,先绘制界面,再编写头文件、源文件……而是直接用的Qt Creator新建的工程。结果按照书里说的,在Qt设计师中修改了窗体的objectName后,就老编译不过去了。老是说“Ui::xxxxxxx没有合适的构造函数可用”。我想肯定是修改了objectName,没有对应修改头文件或源文件的一些地方的原因。<br /> 想了一下,将工程
2011-02-06 18:05:00
4324
原创 寒假
<br /> 快新年了。放假回来这么多天参加了几次同学聚会、睡了N次懒觉,其他时间跟室友一起编写了一个简单的模拟生态系统的程序。内核不是我写的,我就是做了下将生物绘在程序上的“表面工作”。这也得益于HGE吧,不然我这个连MFC都没学会的人怎么去做这种可视化的东西呢。HGE还没学完,就做出了这样的东西,自己还是挺满意的。<br /> 现在慢慢体会到编程最重要还是算法和思想。这些表面的东西很多。有的简单有的复杂。但要想可视化绝对不止一条路。我可能比较喜欢可视化的东西吧。这样做出来的才像个真正的能用的
2011-02-01 14:34:00
682
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人