免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: elution
打印 上一主题 下一主题

[转]GTK+与MFC不完全对比 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2007-04-17 00:38 |只看该作者
原帖由 mistletoezju 于 2007-4-16 16:33 发表
继承+消息, 好处在哪


没想到那么久的贴子还被拉了起来。
简单的示例,主要还是看个人喜好...



  1. class MyHandle : public AHandle {
  2. public:
  3.         MyHandle();
  4.         virtual ~MyHandle();

  5.         virtual void MessageReceived(AMessage *msg);
  6.         virtual void Bombing();

  7. private:
  8. ...
  9. }

  10. ...

  11. void
  12. MyHandle::Bombing()
  13. {
  14.         AMessage reply;

  15.         if (SendMessage(fSolider, AMessage('redy'), &reply) != A_OK ||
  16.             reply.HasBool("Yes, sir.") == false) {
  17.                 Tell(fSolider, "What are you doing ?");
  18.         } else if (!fCommandReceived) {
  19.                 Tell(fChief, "Waiting for your command, sir.");
  20.         } else {
  21.                 AHandle::Bombing();
  22.         }
  23. }


  24. void
  25. MyHandle::MessageReceived(AMessage *msg)
  26. {
  27.         AMessage bombMsg;

  28.         switch(msg->what) {
  29.                 case 'bomb':
  30.                         if ((msg->FindMessage("command", &bombMsg) == A_OK ?
  31.                                         (bombMsg.AddBool("fromCaptain", true),
  32.                                                 SendMessage(fSoldier, bombMsg) == A_OK) :
  33.                                         false)) return;
  34.                         AHandle::MessageReceived(msg);
  35.                         break;

  36.                 ...
  37.                 default:
  38.                         AHandle::MessageReceived(msg);
  39.                         break;
  40.         }
  41. }

  42. ...

复制代码

[ 本帖最后由 savageranthony 于 2007-4-17 00:54 编辑 ]

论坛徽章:
0
12 [报告]
发表于 2007-04-17 08:41 |只看该作者

回复 11楼 savageranthony 的帖子

受教. 继承确实使消息灵活, 强大.

既然面对对象, 也可挺上设计模式了

论坛徽章:
0
13 [报告]
发表于 2007-04-29 23:48 |只看该作者
我个人而言,MFC是在学不会,是我买的书不好还是怎么说
我买的是 深入浅出MFC ,广告打得很想,半天没见到HELLO WORLD,看了一半都不知道作程序的工序是什么。
也有人说这本书是垃圾。

论坛徽章:
0
14 [报告]
发表于 2007-04-30 13:15 |只看该作者
原帖由 aaniao999 于 2007-4-29 23:48 发表
我个人而言,MFC是在学不会,是我买的书不好还是怎么说
我买的是 深入浅出MFC ,广告打得很想,半天没见到HELLO WORLD,看了一半都不知道作程序的工序是什么。
也有人说这本书是垃圾。


        这本书讲的是MFC中RTTI等基础的实现原理和机制,并非教你如何写MFC程序,它是授之以渔,最必须,最基础和最核心的东西。

论坛徽章:
0
15 [报告]
发表于 2007-05-05 22:58 |只看该作者
哦,谢谢了,难怪死都看不懂,哎,原来买错书了。。
不过现在转QT了,不喜欢那些了。准备学完LINUX以后转WINDOWS直接API学习吧

论坛徽章:
0
16 [报告]
发表于 2007-05-08 12:57 |只看该作者

顶一下

好帖

论坛徽章:
0
17 [报告]
发表于 2007-11-26 21:17 |只看该作者
http://www.codeproject.com/useritems/FormDesigner.asp

这个效果看见了吗? 用gtk做到猴年马月去?

有个做界面的杀手叫做 activex,  

api, mfc atl,vb delphi都有支持的

二进制的重用。。。。。


界面嘛还是用工具去设计,而不是用代码去生成

论坛徽章:
0
18 [报告]
发表于 2007-11-27 00:12 |只看该作者
无聊的比较.
MFC与windows挂钩
GTK与lX挂钩的
系统运行模式不同,
比较起来,很荒唐.

论坛徽章:
0
19 [报告]
发表于 2007-12-03 14:54 |只看该作者
这篇文章比较的荒唐,归其原因无非是因MFC框架机制复杂,自己用起来不能得心应手而已。如果学习者能够贯通MFC的整套的框架,不需过于深入只需了解其运行机制,在学习类似文章提到的东西往往能游刃有余,感觉很是轻松!现在说MFC江河日下用者寥寥无几,大部分原因是因为MFC难度颇大,从项目管理方面上考虑的(如:开发周期、人员素质等)。其中不少人也是因为对事一知半解不求真谛,对其的一种误判。对深入研究过MFC框架的朋友们,应该会了解“空有屠龙之术,却无龙可屠。”这句话的含义,看似无奈,却道出英雄孤寂的真正感觉!

最近正在学用qt,这里举个例子就多说一些,部分书上到处宣扬信号与槽比回调机制好,我承认的确比较方便。但我不喜欢这种方便,就是这种简单蒙蔽了多数程序员的双眼,我相信大多数人还是喜欢到兔子洞走一遭的。

论坛徽章:
0
20 [报告]
发表于 2007-12-11 16:11 |只看该作者
不知道Linux下的3D效果和WinVista的比起来是什么区别~
(Linux3D绝对可以对Vista说,你那也叫3D效果?冤枉了1G内存!)
Linux下这么多,像xgl,compiz,berly等效果是靠什么实现的?
Gnome的界面就是比KDE的用起来好用,看起来好看,
究竟是使用Gtk+的人多,还是Qt的人多?

刚开始学习Gtk+,有很多问题不太清楚,不知那位牛人能指点指点。。
(因为喜欢自由,所以选择开源,就选择了Linux。MFC就无缘了,Qt的商业化让人别扭,何况KDE不如Gnome漂亮,理所当然选择Gtk+)
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP