看来搞一个从零开始的GUI,工程量有点大,牛人们不愿意参加。
想改一下工程方向:谁提供下扩展WTL的灵感?在我看来:WTL的最大缺点就是继承了死板的消息机制。
一串串的switch+case,宏的消息映射,看起来就头疼。正在构思:给WTL增加灵活的事件绑定以及容器、控件管理、布局管理...
头有点大,哪位大大曾经研究过,给提供点思路...
或者灵感...

解决方案 »

  1.   

    vcl的那个机制。。不太懂,洗洗睡吧
      

  2.   

    我们现在在坐等java的方言版本泛滥。
      

  3.   

    为什么说WTL消息机制死板?我使用WTL的感受是高效,灵活,简洁。高效:用Thunk实现消息机制,完美的让消息回调函数直接调用类成员函数。
          同时用模板机制来代替虚函数调用,避免了虚函数的低效。
    灵活:可以灵活的Chain消息给任何对象,包括基类,成员变量,甚至Dynamic chain给其他对象。
          这样你可以获得最大的代码重用,你可以针对任何窗口的特性写一个消息处理的Map,
          需要这种特性的窗口只要继承并把消息处理Chain给它,就可以使用这种Feature。
          最后你只要组合这些Map你就可以实现各种Feature的窗口。
    简洁: 对WTL的消息传递有了透彻的理解后,最后写代码几本上都是类似ATL的多继承,组合下就可以了。BTW, 多继承在C++编程里很多时候被抵制, 但在ATL/WTL里对COM和窗口编程确是个灵活高效的特例。
      

  4.   

    这里就有人在扩充WTL,LZ可以去看看
    http://www.viksoe.dk/code/all_wtl.htm
      

  5.   

    学习wtl阶段中,前来凑个热闹!
      

  6.   

    如果你说WTL不灵活,那你可有得改了。
      

  7.   

    查看文章    
    水军网相关报道中的三大疑问2009年12月23日 17:46最近央视做了关于“网络黑社会”的一个报道。通过该报道,把网络营销和网络公关行业推向了舆论的风口浪尖。同时把深藏在各大论坛,从事着比较特殊的工作的一群人也揭露了出来,这群人有着一个共同的名字“网络水军”。“网络水军”这个名字,对于经常逛论坛的人来说,一点也不会陌生。因为这群人每天活动在各大论坛,进行发帖,顶贴。回帖,顶贴对于普通网民来说,只是爱好和兴趣,而对于这群人来说,这个就是他们的工作任务。
    其实“网络水军”这行业,已经在互联网存在了多年,只是随着互联网的运用越来越广泛,对普通人的生活影响也越来越大,所以这个行业也涉及的面也就越来越广泛。笔者当初进入互联网行业的时候,就“从军”了,成为“水军网(ShuiJunWang.com)”中的一员。所以对于媒体所报道的内容,自己觉得有几个问题会误导网民。
    疑问一:“水军网”收入很高
       我看到媒体报道说,发一贴5-8毛,每天能发几百上千个帖子。一个月能赚几千上万。其实这个明显是在误导网民。
    作为曾经从事过这个工作的人来说,虽然已经一年多没有做这个事了,但是对于发帖,回帖的单价是比较。现在的行情基本上是主题帖子在4-5毛钱之间,基本上没有媒体说的5-8毛钱。而且主题帖子并不是按照实际发帖数量来计算你的收入,而是在多少天后,帖子还存在,才能计算为你的实际收入。一般的公司,对主题帖子的审核时间为一周,也就是5-7天。比如周一发的帖子,在周末审核时,帖子还存在,哪么这个帖子就能计算为你的收入,反之,该帖子被删了,审核的时候不在了,哪么这个帖子不被计算在收入之内。
    另外。回帖的单价为1-2毛钱。而且很多都是经过转手的,真正执行人员能拿到的单价,也就1-1.5毛钱,能拿到2毛钱的,应该都是公司直接结算的。如果一个兼职人员,一个月能拿到1000块钱。已经算是很不容易。所以像媒体说的,每个月收入几千上万,基本上不可能实现。
    疑问二:“水军网”工作很轻松
    媒体报道说,“水军”的工作很轻松,一个月轻轻松松就能拿到不菲的收入。这样的话,真的误导了不明真相的网民啊!呼吁不明真相的朋友,别去相信这样的鬼话。
    不管你是接的发布主题帖子还是回帖的任务,其实公司都会给出很多限制的。主题帖我就不多说了,上面已经提到了。我们说说回帖这项任务。
    一般情况下,回帖都会有字数限制,大多公司规定在20个字以上。还有就是对于回帖ID也有很高的要求,一般的同一ID,不能连续回帖,有一定的间隔时间。所以。你每回一个帖子,就要退出在线的马甲,然后在登陆新的马甲。大家可以计算一下每次退出登陆的时间。可能有朋友会说,可能使用马甲切换器。我之前所了解的,这样的软件是有限制的,并不是每个论坛都能使用。还有就是,现在的公司还要求,每个论坛的回帖内容也不能一样,也就是说,每回一个论坛的帖子,都会输入新的回帖内容。如果按照手工回帖来计算,10个小时的工作时间,一个人能回300个帖子,都已经是奇迹了。另外你还得注册数以千计的ID。这个也是需要花费很多时间。大家可以细想一下,“水军”这个工作到底轻松与否。
    疑问三:“水军网”人群
    媒体称“水军”从业人员以公司白领,在校大学生为主。其实这个没有多大的问题。不过真正从事这个工作的公司白领占有的比列很小的。主要以在校大学生,失业人员为主。为什么说白领比较少呢,其实“水军”的收入,真的没有媒体报道的这样多。真实收入与媒体报道相差甚远。曾经我全职做过“水军”。每天工作十个小时以上。做了一个月,只拿到一千块钱多点。所以这样的收入,白领根本是看不上的。像在校大学生和失业人员,这个收入就不错了。大学生一个月的生活费和零花钱就能自给自足了。减轻了父母的负担。
    其实“网络水军”的工作,只是一种按部就班的执行。并没有参与内容的策划。也是不是媒体所说的低投入,高回报的。并不是媒体所说的什么“网络打手”。所以网络社会,应该给“网络水军”多一些宽容和理解。
    水军网地址:http://www.shuijunwang.com/水军网官方QQ群:47985533
     
      

  8.   

    觉得消息机制不爽的话,模仿GTK+就是了。Windows就是这套消息机制,WTL算是把灵活性发挥的相当不错的了。
      

  9.   

    WTL对消息机制处理的还是比较到位的。如果LZ不想将“丑陋”的小消息机制纳入你的构架内可以考虑使用QT的方式使用一组特定的关键字,并使用专用的编译工具将其转换为消息代码!
      

  10.   


    现在GUI貌似正向DirectUI迈进,XML+脚本似乎是前进方向之一。那是题外话了,说起WTL的消息机制,说实话想把宏的消息映射机制给用一种更爽快的方式替代我双手支持,不过想不到替代的方案。楼主要不抛个玉?
      

  11.   

    支持啊 俺也时常有这样的想法 涉及的东西太多 自感能力还不足 一直未能成行,
    WTL灵活性是够了 系统性封装还是有必要的 什么布局啊 smartpart重用 窗体间事件通知,
    异步网络通知 感觉设计的东西不少 还没想好
      

  12.   

    有时间多看看WPF,GDI和USER这套UI架构慢慢要被淘汰了
      

  13.   

    感觉封装框架是利弊各半的。
    要灵活的话当然是SDK了,熟悉SDK的话写什么都随心所欲。但是工作量大啊。
    反正我觉得封装其实就是灵活的反义词。
      

  14.   

    可以参考一下QT Widget的Signals和Slots机制。也可以自己实现事件机制。关于UI,可以自己实现xml脚本,不过比较有难度,解析xml脚本就够折腾了。
    然后各个控件绘制,布局,
    用户与控件交互逻辑,用户操作脚本化,
    控件之间状态交互逻辑和脚本化。还是有难度,,,
      

  15.   

    所以我觉得P.J. Plauger这种巨牛只写类库而不写框架就好理解了。
      

  16.   

    自从用了wtl/atl 都不用mfc了,wtl的消息机制很好啊,也很灵活。
      

  17.   

    说实话个人认为QT的Signals和Slots机制一点也不爽,居然还要用它自己的工具预处理,而且这个工具还不是很灵活……
      

  18.   

    wtl 的消息机制很灵活。在win32上这个UI框架已经非常优秀了。
    但是使用者必须精通多继承和模板的运用,否则发挥不了它的长处。wtl好处是灵活和效率,如果扩展把事件容器布局那些东西搬进来,损害了效率和灵活性。
    直接用.net吧,不用再浪费时间了。其实wtl有布局管理,一个模板类就完成了,非常好复用。
    如果楼主说的扩展是这个模式,还是可以做一点尝试的。
      

  19.   

    不要把xml弄到这个框架里去。
    类库里面switch case 多了很正常,微软不会随便增加消息类型的。
    应用层代码设计好点可以尽量免掉这些switch。
    这是面向机器的代码和面向人的代码的区别,用户是朝三暮四的。
      

  20.   

    为什么不参考.net的消息实现模式?楼主真有精力的话,把C#的WinForm类库用C++实现了
      

  21.   

    国内有人做的不错的。
    http://www.winxgui.cn
    另外,不基于WIN32 控件的话,可以参考directUI
      

  22.   

    那个stlsoft看起来貌视不错呀,呵呵,Mark一下
      

  23.   

    个人觉得如果想放弃消息机制也不是不可以,但是看运行在什么系统上
    如果在windows系统上本身就是消息机制的东西,即使你有一个非常好的机制可以替代他
    那么也首先对他进行封装
    其次是封装的手法,灵活多变模块化又要强,确实不容易做到(qt是个例子)
    封装的应用 在各个封装好的模块上要满足各种业务的需要,就像搭积木一样,
    要有足够多的小类型才能搭出细致的模型来
      

  24.   

          一下 stl soft。