C#换肤工具USKin【转】

来源:互联网 发布:游戏广告投放数据分析 编辑:程序博客网 时间:2024/04/27 21:35

最近的项目想做个漂亮的界面,开发工具使用vs.net 2008(上网查了一下发现支持vs.net2008的人很多,不过也有支持vs.net2005的,当然这只是IDE的选择.NET仍然选择2.0,使用了差不多2周的时间没有发现问题,本人刚刚使用C#还是菜鸟往往菜鸟的时候瞎弄容易将IDE搞死)

USKin网上都说是个免费的换肤DLL,果真是这样不用注册码也可但是有无时间限制还没有做出判断。下面介绍一个使用的方法以及本人使用过程中遇到的问题。只介绍C# NET 2.0其他的不介绍,下面开始....

1、在USkin的主页下载他的SDK,http://www.neemedia.com.当前的最新版本为3.0

2、使用vs.net 2008创建一个Windows Forms Application程序。

3、将USkin下载的开发包中的USkin.dll拷贝到刚刚创建项目的exe所在的文件夹。

4、将皮肤(粉色可爱XP系统主题.msstyles)也拷贝步骤3的文件夹,注意我在此遇到过问题不显示皮肤由于路径错误导致USkinInit函数执行失败

5、将开发包中的USkinSDK.cs文件添加到你的项目中,或者也可以按照下面的自己创建一个

using System;

using System.Collections.Generic;

using System.Text;

using System.Runtime.InteropServices;

namespace USkin

{

    class USkinSDK

    {

        public const string DLLNAME="USkin.dll";

        [DllImport(DLLNAME)]

        public static extern int USkinInit(string userName,string sn,string skinFileName);

        [DllImport(DLLNAME)]

        public static extern int USkinExit();

        [DllImport(DLLNAME)]

        public static extern int USkinLoadSkin(string skinFileName);

        [DllImport(DLLNAME)]

        public static extern int USkinRemoveSkin();

    }

}

6、修改static void Main()函数

static void Main()

        {

            USkinSDK.USkinInit(null, null, "粉色可爱XP系统主题.msstyles");

            

            Application.EnableVisualStyles();

            Application.SetCompatibleTextRenderingDefault(false);

            Application.Run(new Form1());

            USkinSDK.USkinExit();

        }

7、在窗体的Load函数中添加如下函数,如下

        private void Form1_Load(object sender, EventArgs e)

        {

            USkinSDK.USkinLoadSkin("粉色可爱XP系统主题.msstyles");

        }

8、启动程序,程序果然换肤了。但是最大化以后发现界面只显示正常状态大小的皮图其他的透明。

9、将窗体的IsMdiContainer属性设置为true,解决步骤8的问题

这只是USkin简单的应用