08 2014 档案
摘要:在监测的代码里执行需要的行为. 这可以用event Filter来达到. 设置一个event filter有两个步骤:1. 在目标对象上调用installEventFilter(),将监测对象注册到目标对象上.2. 在监测对象的eventFilter()方法里处理目标对象的事件.在ctor里注册监测...
阅读全文
摘要:qtevents多线程工作object存储Another Look at Events(再谈Events)最近在学习Qt事件处理的时候发现一篇很不错的文章,是2004年季刊的一篇文章,网上有这篇文章的翻译版,但是感觉部分地方翻译的比较粗糙,不是很明确。索性重新翻译了一遍,并引用了原翻译版的一段译注。...
阅读全文
摘要:qtuserclass1、事件ID 本质上就是一个整型值。0-999作为系统保留字段,自定义事件从QEvent::User(也就是1000)开始, 例如: #define MY_EVENTQEvent::User+100 大部分情况下自定义事件是不会冲突的,如果我们还引入了其他库,也不完全能确保如...
阅读全文
摘要:characterapplicationsignalqt输入法object1、从QInputContext派生自己的InputContext类 ,例如: class MyInputPanelContext : public QInputContext { Q_OBJECT public: MyInp...
阅读全文
摘要:Qt对于系统底层,一直没有很好的支持,例如串口并口通信,还有我们经常都会用到的全局热键,等等。既然Qt可能出于某种原因,不对这些进行支持,我们就只能自己写代码,调用系统相关的API了。注意,这个是Windows篇,就说明这些代码只支持windows系统。同时,也说明肯定还有其他平台的要写。不过要等O...
阅读全文
摘要:QT应用程序,无论是exe,staticlib,还是dll程序,都可以通过qrc文件来导入各种资源。qrc会将这些资源文件转换为相应代码,参与应用程序的编译。这样做的好处就是:简化了应用程序发布时还需要同步发布各类资源文件的烦恼,缺点就是:应用程序会相对变大;但是,如果我们创建的事staticlib...
阅读全文
摘要:如何实现鼠标单击弹出软键盘默认情况下,如果当前编辑框无焦点,则需要鼠标点击两次才弹出软键盘,其中第一次是让该编辑框获得焦点,第二次点击才弹出软键盘;如果当前编辑框已经获得焦点,则点击一次就会弹出软键盘;如何实现“无焦点的编辑框也能够一次点击就弹出软键盘呢”。方法如下:从QProxyStyle派生,重...
阅读全文
摘要:想要多了解QtSpeech,那么随着本文的文字往下走吧!QtSpeech是一个Qt封装的跨平台TTS(文本变成语音输出)API,在不同平台下利用系统自带的TTS引擎。在Windows下使用SAPI, 在Mac下使用SpeechSynthesis,而在Linux下使用 Festival.QtSpeec...
阅读全文
摘要:尽管每次和cmake对比起来,我们总是说 qmake 简单、功能少。但是qmake仍然是一个非常复杂的东西,我想大多人应该和我一样吧:不是太清楚CONFIG等变量到底如何起作用的用过的qmake内置变量和函数不超过20个看Qt Creator源码或者QtSolution等库中自己使用的 *.pro ...
阅读全文
摘要:/* 应用程序桌面 */QDesktopWidget*desktop = QApplication::desktop();/* 指定显示器的屏幕尺寸(1024 * 768) */QRect screenRect = desktop->screenGeometry();/* 指定显示器的客户区尺寸 *...
阅读全文
摘要:线程互斥多线程运行时,通常会访问同一个变量,同一个数据结构,或者同一段代码。因此,需要使用互斥技术来保护上述资源,确保多线程执行的正确性。注:我们通常说某个函数是线程安全的,也就是因为该函数实现加入了线程互斥保护。4.1、QMutexQMutex( RecursionModemode= NonRec...
阅读全文
摘要:线程之间共享数据,但又单独执行; QT线程QThread是平台无关的;通常主线程从main开始执行,而在主线程中创建其他线程,其他线程派生于QThread;1、线程优先级总共8个优先级:线程优先级从上到下越来越高。ConstantValueDescriptionQThread::IdlePriori...
阅读全文
摘要:QStyleFactory类创建QStyle对象。#include 静态公有成员QStyle* create(const QString & key)QStringList keys()详细描述 QStyleFactory类创建QStyle对象。 QStyle是一个抽象基类,封装了GUI的外...
阅读全文
摘要:SQL执行操作QSqlQuery提供了对数据库记录的Select、Insert、Update、Delete操作。SELECT操作:QSqlQuery query;query.exec("SELECT name, salary FROM employee WHERE salary > 50000");...
阅读全文
摘要:$sudo apt-get remove mysql-common清理残留数据:$sudo dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P按照正常安装步骤安装注意:如果你想进行远程访问或控制,那么你要做两件事:其一:mysql>GRANT...
阅读全文