在一些常用的软件中都支持一键换肤,之前觉得这个功能挺难的,通过上网查资料,也明白了点其中的门路,下面分享一下我的实现步骤。
用到的工具:
- IrisSkin4.dll
- (.ssk)格式的皮肤若干
- 实例化一个全局的Sunisoft.IrisSkin.SkinEngine类和一个全局的list
Sunisoft.IrisSkin.SkinEngine SkinEngine = new Sunisoft.IrisSkin.SkinEngine();
List<string> Skins;
- 在窗体加载的时候,把皮肤加载到list里,这里需要一句话就行了,要注意把路劲写对
Skins = Directory.GetFiles(Application.StartupPath + @"\Skins\", "*.ssk").ToList();
- 通过单击产生随机数来随机更换皮肤,但是随机数不能大于皮肤的个数
Random ran = new Random();
SkinEngine.SkinFile = Skins[ran.Next(0, Skins.Count)];
- 效果展示
看似很难的功能,5行代码就搞定了。灵活的代码,也是我们值得学习的地方!