zoukankan      html  css  js  c++  java
  • .NET程序界面探讨之1:Skin++篇

    工作一直很忙,很久没有写博客了,有个朋友看过我的代码生成工具,觉得界面不错,随整理了一下界面代码,并加入了皮肤功能,现公布以飨读者。
    可能做过Winform界面的朋友都知道,能够实现换肤的控件有很多,但做的比较不错的有如ActiveSkin、SkinCrafter、Irisskin、Skin++等等,不过都是收费的界面控件,这些控件很多来自C++的时代,但由于是OCX控件的方式,所以也可以使用到C#的Winform界面换肤中。
    本人做过ActiveSkin、Skin++的界面换肤功能,觉得两者很是相似。现将Skin++的使用实现介绍如下。

    1、定义一个Skin++控件变量用来存放。注意,该控件对象只要在主窗体中定义即可,其他派生的界面都会具有相同的皮肤效果。
    Code
    2、定义一个函数,用于加载相关的皮肤。
    Code

    在代码中添加this.Hide();this.Show();是为了更新界面,否则会出现一些界面效果还停留在原有效果上,这样处理一下就比较好了。

    3、其他注意事项:
    有时候您的项目代码是强名称的,那么也需要所引用的东西是强名称的才行,Skin++的控件对象默认是没有强名称的,需要强名称的话,那么执行下面的代码进行包装一下即可:
    Code

    另外要注意的是,如果在各种SKin++的定义皮肤中切换,效果很平滑,也很好,但是如果切换到系统默认的皮肤,总觉得界面有一些效果残留,不太好,因此最好提示软件客户重启软件。

    4、界面各种皮肤效果如下

    Skin1.jpg

    Skin2.jpg

    Skin3.jpg

    Skin4.jpg

    Skin5.jpg

    默认没有皮肤的界面
    Skin6.jpg

    演示程序:https://files.cnblogs.com/wuhuacong/SkinPlusDemo.rar 
    感兴趣的可以下载来研究研究,已经包含了上图的各种皮肤文件。
    主要研究技术:代码生成工具、会员管理系统、客户关系管理软件、病人资料管理软件、Visio二次开发、酒店管理系统、仓库管理系统等共享软件开发
    专注于Winform开发框架/混合式开发框架Web开发框架Bootstrap开发框架微信门户开发框架的研究及应用
      转载请注明出处:
    撰写人:伍华聪  http://www.iqidi.com 
        
  • 相关阅读:
    python中删除某个元素的3种方法
    研发团队开源管理工具最佳实践
    Cocos2dx游戏开发系列笔记13:一个横版拳击游戏Demo完结篇
    Sunny谈软件架构
    整理部分JS 控件 WEB前端常用的做成Jsp项目,方便今后直接用
    hdu3033I love sneakers! (分组背包,错了很多次)
    Using关键字的用法
    Android webViewj简单处理apk的下载链接
    山寨腾讯“爱消除”游戏之菜单特效
    Apache与Nginx优缺点比较
  • 原文地址:https://www.cnblogs.com/wuhuacong/p/1373778.html
Copyright © 2011-2022 走看看