VC下的消息映射在QT中如何实现

tomatobin 2013-04-25 10:17:23
VC下的消息映射,在QT中如何实现的。。。求大侠
BEGIN_SF_MESSAGE_MAP(CAboutDlgEventImp)
ON_SF_COMMAND(IDC_BTN_WEBSITE,&CAboutDlgEventImp::OnSFClickWebSite)
END_SF_MESSAGE_MAP()


有如下的传递消息函数:
void UIFactory::UIPostMessage( LPVOID pVWnd, int nID ,LPVOID pParam2 )
{
#ifdef WIN32
if (pVWnd == NULL)
{
ASSERT(FALSE);
return;
}
CWnd *pWnd = (CWnd *)pVWnd;
pWnd->PostMessage(nID,(WPARAM)nID,(LPARAM)pParam2);
#endif
}
...全文
290 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
醉过方知酒烈 2013-08-07
  • 打赏
  • 举报
回复
发送方: PostMessage(yourhandle,WM_LOGIN_ERROR_MSG,0,0);//先要获取到接收方窗口句柄,qt可以根据title之类的获取 接收方: bool Widget::winEvent(MSG *message, long *) { switch( message->message ) { case WM_LOGIN_ERROR_MSG: { m_localLogonFlag = true; checkLogonState(); } break; default: break; } return false; }
befreedomjustice 2013-08-07
  • 打赏
  • 举报
回复
自定义信号和槽
jdwx 2013-08-06
  • 打赏
  • 举报
回复
要注意信号和槽有时间上的延迟(几ms)。
asb2010 2013-08-06
  • 打赏
  • 举报
回复
就是定一个信号 自己定一个槽 然后再connect就可以了
xcyl 2013-05-13
  • 打赏
  • 举报
回复
用Qt的话为什么还要实现消息映射呢?
惟有你爱我 2013-05-13
  • 打赏
  • 举报
回复
自定义信号和槽啊,看来楼主还是个新手。
luoning1217 2013-05-13
  • 打赏
  • 举报
回复
自定义信号,槽
logger_wu 2013-04-28
  • 打赏
  • 举报
回复
Qt里的信号和槽类似于vc里消息映射,而且比手工添加消息要方便不少。也可通过重新实现事件函数来实现“消息映射”。
超开心~ 2013-04-25
  • 打赏
  • 举报
回复
自定义信号和槽 http://blog.163.com/jx_yp/blog/static/1197044592011112303646526/
  • 打赏
  • 举报
回复
用信号.......
标准c库大全:C++标准库介绍 疯狂代码 http://CrazyCoder.cn/ ĵ:http:/CrazyCoder.cn/VC/Article12860.html   标准库提供了C基本设施虽然C标准库随着C标准折腾了许多年直到标准出台才正式定型但是在标准库实 现上却很令人欣慰得看到多种实现并且已被实战证明为有工业级别强度佳作 1、Dinkumware C Library 参考站点:http://www.dinkumware.com/ P.J. Plauger编写高品质标准库P.J. Plauger博士是Dr. Dobb\'s设计杰出奖获得者其编写库长期被Microsoft采 用并且最近Borland也取得了其OEMlicense在其C/C产品采用Dinkumware库 2、RogueWave Standard C Library 参考站点:http://www.roguewave.com/ 这个库在Borland C Builder早期版本曾经被采用后来被其他库给替换了笔者不推荐使用 3、SGI STL 参考站点:http://www.roguewave.com/ SGI公司C标准模版库 4、STLport 参考站点:http://www.stlport.org/ SGI STL库跨平台可移植版本 C各大有名库介绍——准标准库Boost   Boost库是个经过千锤百炼、可移植、提供源代码C库作为标准库后备是C标准化进程发动机的 Boost库由 C标准委员会库工作组成员发起在C社区影响甚大其成员已近2000人 Boost库为我们带来了最新、最酷、最 实用技术是不折不扣“准”标准库 Boost比较有名气有这么几个库: Regex 正则表达式库 Spirit LL parser framework用C代码直接表达EBNF Graph 图组件和算法 Lambda 在地方定义短小匿名对象很实用functional功能 concept check 检查泛型编程concept Mpl 用模板实现元编程框架 Thread 可移植C多线程库 Python 把C类和映射到Python的 Pool 内存池管理 smart_ptr 5个智能指针学习智能指针必读份不错参考是来自CUJ文章: Smart Poers in Boost,哦这篇文章可以查到CUJ是提供在线浏览文版见笔者在Dr.Dobb\'s Journal软件 Software研发杂志第7辑上译文   Boost总体来说是实用价值很高质量很高库并且由于其对跨平台强调对标准C强调是编写平台无关现代C开 发者必备工具但是Boost也有很多是实验性质东西在实际开发实用需要谨慎并且很多Boost库功能堪称对 语言功能扩展其构造用尽精巧手法不要贸然花费时间研读Boost另外面比如Graph这样库则是具有工业强度结构 良好非常值得研读精品代码并且也可以放心在产品代码多多利用 参考站点:http://www.boost.org C各大有名库介绍——GUI   在众多C库GUI部分库算是比较繁荣也比较引人注目在实际开发GUI库选择也是非常重要件事情下面我 们综述下可选择GUI库各自特点以及相关工具支持 1、MFC   大名鼎鼎微软基础类库(Microsoft Foundation Class)大凡学过VC人都应该知道这个库虽然从技术角度讲 MFC是不大漂亮但是它构建于Windows API 的上能够使员工作更容易,编程效率高减少了大量在建立 Windows 时必须编写代码同时它还提供了所有般 C 编程优点例如继承和封装MFC 编写在各个版本 Windows操作系统上是可移植例如在Windows 3.1下编写代码可以很容易地移植到 Windows NT 或 Windows 95 上但是在最近发展以及官方支持上日渐势微[Page] 2、QT 参考网站WebSite:http://www.trolltech.com   Qt是Trolltech公司个多平台C图形用户界面应用框架它提供给应用开发者建立艺术级图形用户界面所需所 用功能Qt是完全面向对象很容易扩展并且允许真正地组件编程自从1996年早些时候Qt进入商业领域它已经成 为全世界范围内数千种成功应用基础Qt也是流行Linux桌面环境KDE 基础同时它还支持Windows、Macosh、 Unix/X11等多种平台 3、WxWindows 参考网站WebSite:http://www.wxwindows.org   跨平台GUI库其类层次极像MFC所以有文章介绍从MFC到WxWindows代码移植以实现跨平台功能通过多 年开发也是个日趋完善GUI库支持同样不弱于前面两个库并且是完全开放源代码新近C Builder XGUI设计器就 是基于这个库 4、Fox 参考网站WebSite:http://www.fox-toolkit.org/   开放源代码GUI库作者从自己亲身开发经验得出了个理想GUI库应该是什么样子感受出发从而开始了对 这个库开发有兴趣可以尝试下 5、WTL   基于ATL个库使用了大量ATL轻量级手法模板等技术在代码尺寸以及速度优化方面做得非常到位主要面向 使用群体是开发COM轻量级供网络下载可视化Control控件开发者 6、GTK 参考网站WebSite:http://gtkmm.sourceforge.net/   GTK是个大名鼎鼎C开源GUI库在Linux世界有Gnome这样杀手应用而Qt就是这个库C封装版本 C各大有名库介绍——网络通信 1、ACE 参考网站WebSite:http://www.cs.wustl.edu/~schmidt/ACE.html   C库代表超重量级网络通信开发框架ACE自适配通信环境(Adaptive Communication Environment)是可 以自由使用、开放源代码面向对象框架在其实现了许多用于并发通信软件Software核心模式ACE提供了组丰 富可复用C包装外观(Wrapper Facade)和框架组件可跨越多种平台完成通用通信软件Software任务其包括:事 件多路分离和事件处理器分派、信号处理、服务化、进程间通信、共享内存管理、消息路由、分布式服务动态 (重)配置、并发执行和同步等等 2、StreamModule 参考网站WebSite:http://www.omnarious.org/StrMod   设计用于简化编写分布式库尝试着使得编写处理异步行为更容易而不是用同步外壳包起异步本质 3、SimpleSocket 参考网站WebSite:http://home.hetnet.nl/~lcbokkers/simsock.htm   这个类库让编写基于客户/服务器更加容易 4、A Stream Socket API for C 参考网站WebSite:http://www.pcs.cnu.edu/~dgame/s/sC/s.html   又个对Socket封装库 C各大有名库介绍——XML 1、Xerces 参考网站WebSite:http://xml.apache.org/xerces-c/   Xerces-C 是个非常健壮XML解析器它提供了验证以及SAX和DOM APIXML验证在文档类型定义 (Document Type DefinitionDTD)方面有很好支持并且在2001年12月增加了支持W3C XMLSchema 基本完整 开放标准 2、XMLBooster[Page] 参考网站WebSite:http://www.xmlbooster.com/   这个库通过产生特制parser办法极大提高了XML解析速度并且能够产生相应GUI来修改这个parser在 DOM和SAX两大主流XML解析办法的外提供了另外个可行解决方案 3、Pull Parser 参考网站WebSite:http://www.extreme.indiana.edu/xgws/xsoap/xpp   这个库采用pull思路方法parser在每个SAXparser底层都有个pullparser这个xpp把这层暴露出来直接给大 家使用在要充分考虑速度时候值得尝试 4、Xalan 参考网站WebSite:http://xml.apache.org/xalan-c/   Xalan是个用于把XML文档转换为HTML纯文本或者其他XML类型文档XSLT处理器 5、CMarkup 参考网站WebSite:http://www.firstobject.com/xml.htm   这是种使用EDOMXML解析器在很多思路上面非常灵活实用值得大家在DOM和SAX的外寻求点灵感 6、libxml http://libxmlplusplus.sourceforge.net/   libxml是对著名libxml XML解析器C封装版本 C各大有名库介绍——科学计算 1、Blitz 参考网站WebSite:http://www.oonumerics.org/blitz   Blitz 是个高效率数值计算库它设计目是希望建立套既具像C 样方便同时又比Fortran速度更快数值计算环 境通常用C所写出数值比 Fortran慢20%左右因此Blitz正是要改掉这个缺点思路方法是利用Ctemplate技术执行 甚至可以比Fortran更快   Blitz目前仍在发展对于常见SVDFFTsQMRES等常见线性代数思路方法并不提供不过使用者可以很容易 地利用Blitz所提供来构建 2、POOMA 参考网站WebSite:http://www.codesourcery.com/pooma/pooma   POOMA是个免费高性能C库用于处理并行式科学计算POOMA面向对象设计方便了快速开发对并行机器 进行了优化以达到最高效率方便在工业和研究环境使用 3、MTL 参考网站WebSite:http://www.osl.iu.edu/research/mtl   Matrix Template Library(MTL)是个高性能泛型组件库提供了各种格式矩阵大量线性代数方面功能在某些 应用使用高性能编译器情况下比如Intel编译器从产生汇编代码可以看出其和手写几乎没有两样效能 4、CGAL 参考网站WebSite:www.cgal.org   Computational Geometry Algorithms Library目是把在计算几何方面大部分重要解决方案和思路方法以 C库形式提供给工业和学术界用户 2009-2-12 3:54:40 疯狂代码 http://CrazyCoder.cn/

16,216

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧