现在位置: 首页 > Qt
文章目录 Qt信号与槽 引入元对象系统 建立信号槽链接 信号的激活 槽的调用 全家福 零零散散,写在后面 有网友抱怨: 哪个大牛能帮帮我,讲解一下信号槽机制的底层实现? 不要那种源码的解析,只要清楚的讲讲是怎么发送信号,怎么去选择相应的槽,再做出反应。也就是类似于一个信号槽的相应流程。。。求解啊!!! 看了源码,真的是一头雾水。。。撞墙的心都有了~~~~ ...
阅读全文
2014-05-13 06:12 工业·编程 ⁄ 共 10551字 暂无评论
文章目录 一个简单的Win32程序 考虑Qt? 本文以一个Win32的helloworld程序开篇, 程序入口WinMain 注册窗口类别 建立窗口,在屏幕上显示 进入事件循环,不断从事件队列中取出消息来处理 而后尝试解释前述各部分分别隐藏在Qt何处: main() 程序入口 Qt提供一个WinMain来调用main QWidget::show() 注册窗口类别 第一次使用时会注册类别 显示窗体 ...
阅读全文
2014-05-13 05:59 工业·编程 ⁄ 共 3271字 暂无评论
文章目录 相对路径 工作目录 进程内修改工作目录 回到Qt 在Qt论坛经常看到网友抱怨: QPixmap("dbzhang800.png") 加载图片不成功 QFile("dbzhang800.txt") 打开文件失败 ... 遇到这种问题,我一般回答:请注意区分”进程的工作目录 "与”程序所在的目录” 。但这种回答似乎还是显得太苍白了,既然如此,整理一下吧。 用到了相对路径,你清楚&...
阅读全文
文章目录 不指定链接子系统 指定windows子系统 指定console子系统 入口函数 Qt指定链接子系统 windows.prf QMAKE_LIBS_QT_ENTRY QtTest模块 from邮件列表 考虑一个简单的程序代码,代码中定义两个入口函数:main和WinMain(不要觉得两个同时出现很奇怪),下面测试时 源码3种情况 :只有main、只有WinMain、二者同时存在 链接子系统3中情况 :不指定子系统、指定windows...
阅读全文
文章目录 *.pro *.pri *.prf *.prl 尽管每次和cmake对比起来,我们总是说 qmake 简单、功能少。但是qmake仍然是一个非常复杂的东西,我想大多人应该和我一样吧: 不是太清楚CONFIG等变量到底如何起作用的 用过的qmake内置变量和函数不超过20个 看Qt Creator源码或者QtSolution等库中自己使用的 *.pro 文件就想看天书一样 本文只能抓住一条线,简单介绍一下 *.pro...
阅读全文
2014-05-13 05:35 工业·编程 ⁄ 共 1579字 暂无评论
文章目录 QFtp的失误 数据流 处理中文 ftp 是一个古老的协议,ftp 在编码问题上相当笨,笨到对编码一无所知。 因为设计上如此,在现在的协议下,无法从根本上解决。所以我们使用ftp是将不可避免地遇到编码问题。 不管你是那种客户端,如果你不知道服务器采用的编码,你只能去猜测服务器采取何种编码,所以不可避免会有乱码问题(如果你用ftp,相信你深有感受)。QFtp 遇...
阅读全文
在QTimer源码分析(以Windows下实现为例) 一文中,我们看到了Qt在windows下对计时器的使用: 对于间隔为零的情况,Qt并没有动用系统的计时器 对于间隔非零的情况 间隔小于20ms 且系统支持多媒体计时器,则使用多媒体计时器 否则,使用普通计时器 Qt 的这种策略应该能很好地满足我们的需求了,但qtcn上一个网友还是比较期待自己直接调用系统的多媒体计时器。既然这样,自己还是尝试写写吧,写一个自己的Timer类 代码 ...
阅读全文
singleShot(0, ...)是表示下面的哪种情况呢? 1. 退出当前函数,回到事件循环的时候立即执行,忽略其它消息。 2. 把对应的QTimerEvent放到消息队列的最后,然后依次处理消息。 3. 把这个这个singleShot对应的QTimerEvent放到最后。依次处理消息。但是如果有新的消息到达时,它们会排到QTimerEvent的前面。 其中,2是假定消息队列没有优先级。1、3假定消息队列有优先级,但是1假定QTimerEvent最优先,而3假定QTimerEvent最不优先...
阅读全文
QPushButton,很常见很简单的一个东西。可以今天还是被它的一个default属性弄晕了。QDialog中添加一个QDialogButtonBox,然后其中始终有一个button始终处于default状态,死活去不掉... 到底怎么了... 从头理理了,于是便有了本文 focus 与 default QPushButton 的这两个属性都影响其外观,如下图所示,在vista系统下   外观 特性 focus 按钮有虚框 按下“空格”触发按钮点击(与是否QDialog无关) default...
阅读全文
不少人有给程序添加全局热键的需求。网上随便一搜,就能找到不少介绍windows下如何实现的方式: 首先: 使用 RegisterHotKey和 UnregisterHotKey 注册和反注册热键 其次: 在事件全局过滤器 winEventFilter 中相应热键 但是涉及其他平台的,中文资料中提到的似乎不多。 libqxt 其实Qt第三方的库 libqxt 中已经给出了一个比较好的跨平台的解决方案,这就是 QxtGlobalShortcut。 所以,只要你使用这个第三方库就可以了。 可是...
阅读全文