2014-05-13 06:45
⁄ 工业·编程
⁄ 共 8137字
文章目录
Qt信号与槽
引入元对象系统
建立信号槽链接
信号的激活
槽的调用
全家福
零零散散,写在后面
有网友抱怨:
哪个大牛能帮帮我,讲解一下信号槽机制的底层实现? 不要那种源码的解析,只要清楚的讲讲是怎么发送信号,怎么去选择相应的槽,再做出反应。也就是类似于一个信号槽的相应流程。。。求解啊!!! 看了源码,真的是一头雾水。。。撞墙的心都有了~~~~
...
Qt阅读全文
2014-05-13 06:12
⁄ 工业·编程
⁄ 共 10551字
文章目录
一个简单的Win32程序
考虑Qt?
本文以一个Win32的helloworld程序开篇,
程序入口WinMain
注册窗口类别
建立窗口,在屏幕上显示
进入事件循环,不断从事件队列中取出消息来处理
而后尝试解释前述各部分分别隐藏在Qt何处:
main()
程序入口
Qt提供一个WinMain来调用main
QWidget::show()
注册窗口类别
第一次使用时会注册类别
显示窗体
...
Qt阅读全文
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 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阅读全文