
Qt
dongfangyu
流浪在广州
展开
-
QT多线程异步调用,类似MFC的PostThreadMessage
<br />QT多线程异步调用,类似MFC的PostThreadMessage<br /> <br />在MFC中,每个界面线程都会有一个消息队列,通过函数PostThreadMessage,线程之间可以互发消息,由于Post的方式是非阻塞的,因此系统可以表现出很好的性能。这种消息机制是多线程之间异步调用的极佳方式。<br />笔者最近学习QT4.5.3的时候,想在QT中找到类似于相似的机制,但是暂时没有发现。于是想,没有就创造它。以下描述我如何使QT拥有MFC的消息机制。<br />MFC的消息机制,其实原创 2010-10-09 17:45:00 · 4508 阅读 · 0 评论 -
QEvent postEvent/sendEvent
<br />可以自訂事件類型,最簡單的方式,是透過QEvent::Type指定事件類型的常數值,在建構QCustomEvent時作為建構引數並透過postEvent()傳送事件,例如:<br />const QEvent::Type MyEvent = (QEvent::Type) 9393;<br />...<br />QApplication::postEvent(object, new QCustomEvent(MyEvent));<br /><br /><br />自訂事件必須定義事件號碼(Even转载 2010-10-12 17:23:00 · 6099 阅读 · 0 评论 -
怎样在 S60 Qt 程序里调用 Symbian API
怎样在 S60 Qt 程序里调用 Symbian API我在上次 blog里说过,Qt程序启动的时候已经具备了基本的调用 Symbian API的环境,cleanupstack, ActiveScheduler 都有了。<br /><br />所以可以直接包含Symbian的头文件,就像普通Symbian 程序里面那样调用就好了,唯一的问题是怎么包含library.<br />qt是用 pro描述工程文件的,那个mmp文件实际上是qmake通过 pro文件生成的,所以不能在mmp里加 library,这样的转载 2010-10-28 09:01:00 · 895 阅读 · 0 评论 -
How do I add capabilities to my executable in qt for symbian?
How do I add capabilities to my executable? <br />Capabilities are requested/declared in the executable's .pro file using the TARGET.CAPABILITY keyword (in Symbian scope). The code fragment below shows how to specify the most common "user" capabilities: sy原创 2010-10-28 09:14:00 · 785 阅读 · 0 评论 -
qt 线程与ui线程同步
<br />qt 线程与ui线程同步 收藏 <br />本文转自:http://hi.baidu.com/buptyoyo/blog/item/b7b035ef2233a9d8b31cb137.html<br />目前只会一种,采用信号槽机制。<br />通常情况下,信号和槽机制可以同步操作,这就意味着在发射信号的时候,使用直接函数即可以立刻调用连接到一个信号上的多个槽。<br />然而,当连接位于不同线程中的对象时,这一机制就会变得不同步起来,可以通过修改QObject::connect()的第5个可选参原创 2010-10-28 11:20:00 · 2521 阅读 · 0 评论 -
QT中线程调用GUI主线程控件的问题
QT中线程调用GUI主线程控件的问题之前写过一篇文章,是传界面指针到线程中去,从而在线程中操作主界面中控件。<br />今天发现,这种方法是极其错误的,文章我已经删掉,希望没有误人子弟。<br />前面转的两篇文章中对于为什么不能在线程中操纵界面控件指针有了很好的解释。下面在做下解释:<br />尽管QObject是可重入的,但GUI类,特别是QWidget与它的所有子类都是不可重入的。它们仅用于主线程。正如前面提到过 的,QCoreApplication::exec() 也必须从那个线程中被调用。实践上,转载 2010-10-28 21:16:00 · 2819 阅读 · 1 评论 -
QT中线程调用GUI主线程控件的问题
QT中线程调用GUI主线程控件的问题之前写过一篇文章,是传界面指针到线程中去,从而在线程中操作主界面中控件。<br />今天发现,这种方法是极其错误的,文章我已经删掉,希望没有误人子弟。<br />前面转的两篇文章中对于为什么不能在线程中操纵界面控件指针有了很好的解释。下面在做下解释:<br />尽管QObject是可重入的,但GUI类,特别是QWidget与它的所有子类都是不可重入的。它们仅用于主线程。正如前面提到过 的,QCoreApplication::exec() 也必须从那个线程中被调用。实践上,转载 2010-10-28 21:16:00 · 13916 阅读 · 4 评论