2014-05-13 05:59
⁄ 工业·编程
⁄ 共 3271字
文章目录
相对路径
工作目录
进程内修改工作目录
回到Qt
在Qt论坛经常看到网友抱怨:
QPixmap("dbzhang800.png") 加载图片不成功
QFile("dbzhang800.txt") 打开文件失败
...
遇到这种问题,我一般回答:请注意区分”进程的工作目录 "与”程序所在的目录” 。但这种回答似乎还是显得太苍白了,既然如此,整理一下吧。
用到了相对路径,你清楚&...
c++, Qt阅读全文
2014-05-13 05:49
⁄ 工业·编程
⁄ 共 5661字
文章目录
不指定链接子系统
指定windows子系统
指定console子系统
入口函数
Qt指定链接子系统
windows.prf
QMAKE_LIBS_QT_ENTRY
QtTest模块
from邮件列表
考虑一个简单的程序代码,代码中定义两个入口函数:main和WinMain(不要觉得两个同时出现很奇怪),下面测试时
源码3种情况 :只有main、只有WinMain、二者同时存在
链接子系统3中情况 :不指定子系统、指定windows...
Qt阅读全文
2014-05-13 05:41
⁄ 工业·编程
⁄ 共 2523字
文章目录
*.pro
*.pri
*.prf
*.prl
尽管每次和cmake对比起来,我们总是说 qmake 简单、功能少。但是qmake仍然是一个非常复杂的东西,我想大多人应该和我一样吧:
不是太清楚CONFIG等变量到底如何起作用的
用过的qmake内置变量和函数不超过20个
看Qt Creator源码或者QtSolution等库中自己使用的 *.pro 文件就想看天书一样
本文只能抓住一条线,简单介绍一下 *.pro...
qmake, Qt阅读全文
2014-05-13 05:35
⁄ 工业·编程
⁄ 共 1579字
文章目录
QFtp的失误
数据流
处理中文
ftp 是一个古老的协议,ftp 在编码问题上相当笨,笨到对编码一无所知。
因为设计上如此,在现在的协议下,无法从根本上解决。所以我们使用ftp是将不可避免地遇到编码问题。
不管你是那种客户端,如果你不知道服务器采用的编码,你只能去猜测服务器采取何种编码,所以不可避免会有乱码问题(如果你用ftp,相信你深有感受)。QFtp 遇...
ftp, Qt阅读全文
2014-05-12 05:07
⁄ 工业·编程
⁄ 共 1538字
在QTimer源码分析(以Windows下实现为例) 一文中,我们看到了Qt在windows下对计时器的使用:
对于间隔为零的情况,Qt并没有动用系统的计时器 对于间隔非零的情况 间隔小于20ms 且系统支持多媒体计时器,则使用多媒体计时器 否则,使用普通计时器 Qt 的这种策略应该能很好地满足我们的需求了,但qtcn上一个网友还是比较期待自己直接调用系统的多媒体计时器。既然这样,自己还是尝试写写吧,写一个自己的Timer类
代码 ...
Qt阅读全文
2014-05-11 16:20
⁄ 工业·编程
⁄ 共 3246字
黑客一词源自英文hacker,最初曾指热心于计算机技术、水平高超的电脑玩家,尤其是程序设计人员,但随着互联网行业的逐渐成熟,黑客的属性也分为白帽子和黑帽子。
方小顿就是白帽黑客中的佼佼者。他是国内著名安全组织80sec的成员。也曾经是百度安全专家,负责对黑客袭击百度网站的抵御工作,曾发现多个知名底层和脚本安全漏洞。
随后他又创立了网络漏洞报告平台——乌云,作为一个厂商和安全研究者之间的安全问题反馈平台,乌云提...
乌云, 方小顿, 黑客阅读全文
2014-05-11 05:03
⁄ 工业·编程
⁄ 共 6928字
singleShot(0, ...)是表示下面的哪种情况呢?
1. 退出当前函数,回到事件循环的时候立即执行,忽略其它消息。
2. 把对应的QTimerEvent放到消息队列的最后,然后依次处理消息。
3. 把这个这个singleShot对应的QTimerEvent放到最后。依次处理消息。但是如果有新的消息到达时,它们会排到QTimerEvent的前面。
其中,2是假定消息队列没有优先级。1、3假定消息队列有优先级,但是1假定QTimerEvent最优先,而3假定QTimerEvent最不优先...
Qt阅读全文
2014-05-10 23:09
⁄ 工业·编程
⁄ 共 4864字
QPushButton,很常见很简单的一个东西。可以今天还是被它的一个default属性弄晕了。QDialog中添加一个QDialogButtonBox,然后其中始终有一个button始终处于default状态,死活去不掉... 到底怎么了... 从头理理了,于是便有了本文
focus 与 default
QPushButton 的这两个属性都影响其外观,如下图所示,在vista系统下
外观
特性
focus
按钮有虚框
按下“空格”触发按钮点击(与是否QDialog无关)
default...
Qt阅读全文
2014-05-09 23:07
⁄ 工业·编程
⁄ 共 3332字
不少人有给程序添加全局热键的需求。网上随便一搜,就能找到不少介绍windows下如何实现的方式:
首先: 使用 RegisterHotKey和 UnregisterHotKey 注册和反注册热键
其次: 在事件全局过滤器 winEventFilter 中相应热键
但是涉及其他平台的,中文资料中提到的似乎不多。
libqxt
其实Qt第三方的库 libqxt 中已经给出了一个比较好的跨平台的解决方案,这就是 QxtGlobalShortcut。
所以,只要你使用这个第三方库就可以了。
可是...
Qt阅读全文
2014-05-08 23:05
⁄ 工业·编程
⁄ 共 1270字
Qt 是事件驱动的,所以当你用Qt的时候,几乎时时刻刻和 QEventLoop 打交道、,只是你可能没有意识到:
QCoreApplicaton::exec()
QApplication::exec()
QDialog::exec()
QThread::exec()
QDrag::exec()
QMenu::exec()
...
在前面列出的这些常见函数的背后,都有各自的QEventLoop,可能是我们很少有机会想到自己显式使用QEventLoop的缘故吧,对这个类似乎总是有些陌生。
在 如何让 Qt 程序的 Sleep 和 QDialog 模态对话框...
Qt阅读全文