VS2010皮肤控件介绍
在我们平时使用的各种工具中,如QQ,迅雷,以及各种空间等,都提供了一些换肤功能,可以让我们选择各种我们喜欢的界面。本文就对VS中常用的窗口程序做一个简单的换肤,利用一个dll文件来进行实现。
首先我们要加载一个叫做IrisSkin2.dll的dll文件,通过“添加引用”,在应用里添加IrisSkin2.dll,就可以完成对这个dll的调用。然后在工具栏中添加一个SkinEngine的控件。可以在工具栏中添加一个选项卡,比如命名为Skin,然后右键单击,在选择项的.NETFramework组件中找到SkinEngine的控件。
这时候,我们就能看到在工具栏中有了一个SkinEngine的控件了。
除此之外,我们还需要一个皮肤文件,通常后缀为.ssk,或者是.skn文件。可以用两种方法来实现,一种是在bin/Debug中添加名为ssk的文件,此种方法比较简单,只需要在程序中添加如此代码就OK了。
this.skinEngine1.SkinFile = "MSN.ssk";
文件名可以是任意存在的文件名。只要是在Debug里存在的。
另一种方法是使用MemoryStream。通过一个简单的函数来设置来实现。
private void SetSkinFile(byte[] bytes)
{
memoryStream=new MemoryStream(bytes);
skinEngine1.SkinStream = memoryStream;
}
在使用的时候,需要调用该函数,如SetSkinFile(Properties.Resources.Wave1);使用Resources文件的前提是必须在Resource中添加相应的资源。具体方法如下:
选择Properties中的Resources,选择添加资源,将相对应的SSK资源添加进来。
整个窗口的代码如下:
using System;
using System.Windows.Forms;
using System.IO;
namespace 皮肤
{
public partial class Form1 : Form
{
private int num = 0;
private MemoryStream memoryStream;
public Form1()
{
InitializeComponent();
SetSkinFile(Properties.Resources.Wave1);
}
//此处实现的是通过按钮来实现不断换肤功能,主要是对bin里面的
//几个皮肤文件做循环
private void button1_Click(object sender, EventArgs e)
{
num = (num++) % 6 + 1;
this.skinEngine1.SkinFile = num + ".ssk";
}
private void SetSkinFile(byte[] bytes)
{
memoryStream=new MemoryStream(bytes);
skinEngine1.SkinStream = memoryStream;
}
}
}
以上程序的运行效果如下:
如此一来,只要我们有相应的皮肤文件,都可以加到我们想要的窗口上,实现窗口的美化。
具体源码可以在此免费下载:http://download.csdn.net/source/2862647
VS2010皮肤控件介绍相关推荐
- 皮肤控件 IrisSkin4.dll / IrisSkin2.dll的下载及调用样例
1,从其官下载 完整安装包,并安装到本地 http://irisskin.software.informer.com/download/ 2, VS2010用 IrisSkin4.dll, 这个 ...
- Web开发中的弹出对话框控件介绍
Web开发中,目前由于Jquery的大行其道,因此很多弹出对话框,都用到了Jquery技术,反而原始的弹出对话框的方式较为少用了.不过基于JQuery的方式实现对话框窗口弹出,也有很多控件可以利用,由 ...
- Qt常用控件介绍(一)
Qt常用控件介绍 Qt Creator 的使用技巧 Qt Creator的常用快捷键 按钮 QPushButton QToolButton QRadioButton QCheckBox QComman ...
- 透明皮肤控件设计系列(一):前言
转自:http://www.138soft.com/?p=35 Delphi的皮肤控件非常多,例如DynamicSkinForm等等.以前都是习惯直接使用第三方皮肤控件,后来在开发一个内部IM聊天工具 ...
- alpha组件 color_标准皮肤控件组件AlphaControls发布 v15版本,添加了多种新属性 | 附下载...
AlphaControls是一个标准的皮肤控件集合,它具有很多新的属性,可以添加到普通的控件中以增强程序界面效果,同时还能添加一些行为到普通的控件中,并使用了一些新技术.AlphaControls是一 ...
- Delphi著名皮肤控件库横向对比
皮肤这东西很多人褒贬不一,有人认为程序做的好就行了,界面还是保持原生态来的稳定.的确,稳定是程序至关重要的一点,离开这点其他任何都无从谈起,但不可否认,无论是微软.苹果,还是大众用户,审美观越来越高, ...
- operamasks-ui2.0 +MVC4.0+EF5.0实战之一 开篇及布局控件介绍
两年前,曾打算自己开发一个web开发框架,把部门.人员.权限.日志作为基本服务加入进去,在其基础上可以做业务快速开发,结果没有坚持下去,仅仅开了个头就夭折了.究其原因,一方面是采用自己完全不熟悉的新技 ...
- Flutter 系列文章:Flutter Icon 控件介绍
Flutter Icon 控件介绍 一.使用方法 构造方法 Icon(this.icon, {Key key,this.size,this.color,this.semanticLabel,this. ...
- QT信号与槽-启动系统程序以及相关控件介绍
1.1 创建一个继承至QWidget的项目. 1.2 设计界面,分析界面采用的布局方式. 首先,每行控件采用水平布局方式,第三行为了使控件靠右,前面添加一个占位控件. 三行采用垂直平局: 选中控件,通 ...
最新文章
- mysql min函数 结果全为null_MySQL ----- 聚集函数(AVG,SUM,COUNT,MIN,MAX) (十一)
- MySQL高可用群集------配置MMM高可用架构
- GDCM:读取和转储DICOMDIR文件的测试程序
- 我尽力了,为啥还是Bug不断?
- 77种互联网盈利创新模式(3)
- 前端学习(3328):闭包的形式3
- 【数据结构----笔记4】插入排序算法之【折半插入排序算法】
- 潘多拉固件设置ipv6_(转)pandorabox固件+PPPOE拨号+IPV6
- ASP.NET Core 新建项目(Windows) - ASP.NET Core 基础教程 - 简单教程,简单编程
- 【c++】笔记:输入带空格的字符串
- Python --链接MYSQL数据库与简单操作 含SSH链接
- HAProxy + Keepalived实现MySQL的高可用负载均衡
- html引入思源黑体
- cba比赛比分预测_2019-20赛季CBA第5轮比赛预测!
- Vue使用debugger
- convert bitset descriptor - cv::Mat
- 乐得瑞LDR6282B 支持双C口盲插便携显示器驱动板方案
- CVPR21Look Closer to Segment Better: Boundary Patch Refinement for Instance Segmentation
- html5 ie7兼容性问题,解决浏览器IE6,IE7兼容性的总结
- SecureCRT使用SSH连接很慢问题解决