我想为自己的程序做一个皮肤,不使用别人的库!
有人说皮肤的实现有两种方式:Hook和子类化.
我想请教Hook和子类化的原理是什么?它们有什么不同?

解决方案 »

  1.   

    HOOK 主要用来捕捉窗口创建与删除。
    子类化用来处理窗口消息,重画窗口。至少我是这么实现的。
      

  2.   

    Hook和子类化是共同作用实现皮肤?还是利用其一就可以实现皮肤?
      

  3.   

    Hook 主要捕捉 MessageBox 之类的对话框弹出。捕捉到后,用子类化实现皮肤。
      

  4.   

    着啊。我已经做好了一个,跟 SkinMagic 功能一样的。但是还没做好 StatusBar 和 ToolBar。不过 SkinMagic 的滚动拉动起来闪闪烁烁的,我的则没有。^_^开了后告诉我一声。
    QQ: 75735583
    MSN:[email protected]
      

  5.   

    hook 和子类化你可以参考
    http://www.vccode.com/file_show.php?id=2373
      

  6.   

    回复人: needways(needways) ( ) 信誉:100    方便给些可执行文件(例子)的链接吗?
      

  7.   

    子类化就不说了,网站上多的是,
    到象www.codeprojiect.com
    www.codeguru.com去找找自画的,
    多得象牛毛.HOOK的我看见的一个感觉还可以:
    http://www.vccode.com/file_show.php?id=2063
      

  8.   

    回复人: needways(needways) ( ) 信誉:100  2004-6-25 11:34:07  得分: 0  
     
     
       
    着啊。我已经做好了一个,跟 SkinMagic 功能一样的。但是还没做好 StatusBar 和 ToolBar。不过 SkinMagic 的滚动拉动起来闪闪烁烁的,我的则没有。^_^开了后告诉我一声。
    QQ: 75735583
    MSN:[email protected]  
     
    ================================
    你用的SkinMagic是多少版本的???
    我刚才试验了一下在RichEdit里面的滚动条没有闪烁现象啊~~~
    我是用的2.0b1版本的