1.我不要那种在XP环境下通过修改装配件来是VS.net恢复成XP风格
2.我不要XP风格的控件,那些我已经有
我要的是在任何的超作系统下,使用XP风格的窗体,扩充一点说就是自己绘制窗体
但是只能改变窗体的外观,但是其原有的非窗体区域我控制不了,尤其是在其中加入一些特殊的控件如MainMenu,StatusBar等,他们都跑到边上去了!
希望有高手给出完美的解决方案,谢谢.

解决方案 »

  1.   

    具体说应是:
    重载WndProc,然后处理有关WM_NCXXX的消息,是怎么做的?我已查了很多资料,有关重载WndProc的资料很少,请大侠给我相关原码学习下,真诚的谢了!
      

  2.   

    如果好做的话早就有人做的很好了,这个不简单,除非你用别人写好的控件,如果在XP下用Application.EnableVisualStyles();倒也不错啊.我还是觉得你作的程序和你的操作系统相容最好,什么样的系统有什么样的软件也没有什么啊,如果作的太个性有时反到觉行格格不入.我不太要求这个.
      

  3.   

    你能重写Form的OnPaint事件,可以在自己写一个菜单啊。
      

  4.   

    用ComponentOne公司的控件,很容易实现的
    具体请看:
    http://www.componentone.com/
      

  5.   

    TO:  kwklover(随风) 
    >>用ComponentOne公司的控件,很容易实现的
    >>具体请看:
    >>http://www.componentone.com/
    ==============================
    请问你说的控件事不是免费的?
    该怎样下在,我试过没有成功。
    请你给我一个直接的下载地址好吗?
    谢谢了。
      

  6.   

    这有什么难的啊,给你个链接你看看去就明白了
    http://www.chinaui.com/bbs/dispbbs.asp?boardID=12&ID=11086
      

  7.   

    对了,我记得以前还有一个vb的ocx的控件,也是用来实现XP的窗体的,你可以自己在vb论坛里找一下
      

  8.   

    呵呵﹗zoujiaming(笨笨的!)我們這討論是自繪窗體后﹐怎么解決菜單置上的問題
      

  9.   

    http://www.componentone.com/的我也用过,不过效果不是太好
    具体有效方法还在摸索中!
    希望你能尽快解决!
    我顶!!!!!!!!!
      

  10.   

    我也一直在苦寻啊,原来在VB,VB,Delph环境下,要几多有几多,现在不行了,好日子还没开始
      

  11.   

    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dnperfmo/html/xpthemeaddin.asp如果你需要的只是实现xp的窗口效果,根本不需要自己定义。你只要用xp下面的控件就可以了。为此你要做两步:
    首先,让你调用的窗口控件Microsoft.Windows.Common-Controls的版本为6.0,而不是默认的5.0,为此你需要在执行文件目录下加入一个Manifest配置文件。内容在上文中。
    其次,保证你所有的button控件的style为system。这样就可以在w2k或者w98下实现xp的外观效果了。
      

  12.   

    我现在用的是一个魔术控件,挺好地,基本xp风格都能实现,免费的,安装后使用说明非常详细。我做xp风格几乎都用它,要的话吧邮箱告疏我。[email protected],保证好用。
      

  13.   

    是在http://www.dotnetmagic.com/features.html的下载的,是不?
      

  14.   

    我想自已弄弄练练手,lwjlwj(老李飞刀)兄你能给我一个思路吗?
      

  15.   

    到里面找找。
    www.dotnetmagic.com
    www.divil.co.uk
      

  16.   

    标题栏是不能用OnPaint重绘的,OnPaint只负责客户区,标题栏属于系统区,由系统负责绘制(否则XP也就没法换主题了)。在Win32下可以使用WM_NCPAINT(好像是)和GetWindowDC在整个窗体绘制,没有研究过GDI+,不知道可不可以。
      

  17.   

    不如你把重写的OnPaint事件公布出来,大家研究研究!!^_^