BussinessSkinForm

入门教程

By 刘家君(qufo)

作者:刘家君

工作单位:福建省 泉州鹭燕医药有限公司 职务:网络管理员

网名:qufo

Mail:qufo@tom.com,qufo@163.com QQ:18185579

可任意转载 自由发布 ,但不要抹去我的名字及修改其中重要内容

序 言

BussinessSkinForm是Almdev公司(http://www.almdev.com)出品的一套皮肤控件,可以方便地美化程序界面,支持随时更新界面及自定义界面,现已有超过80套的皮肤可用。并且可以利用自带的皮肤编辑器生产自定义的皮肤。

本文档只提供入门级的教程,使“菜鸟”级的人物可以选学先看。更多的使用方法见其自带的demo和帮助,我将把demo和本文档打包在一起。

第一章:下载安装

一、下载

此控件在各大delphi控件下载站都有,并且是破解+中文的。如有可能,请支持正版。(可到http://www.almdev.com定制订单)。

下面我们以在 www.2ccc.com 下载得到的控件为例。

二、安装

1.下载得到的大部分为压缩文件,用解压缩程序将它解开后可以得到源代码及安装包, 如下图

注:我已安装Delphi 8 所以 DPK 的图标跟delphi 7中 DPK图标不一样。 2.启动 Delphi 我们以 Delphi 7 为例。

然后通过菜单 File -> Open Project 导航到压缩得到 BSFD7.dpk 路径,并选择以打开此包,如图:

3.点Compile 按钮,Compile 完成后Install 按钮变得可点。

点击 Install 按钮即可把控件包安装到delphi的IDE中。

4.通过 Tools -> Environment Options 可打开Environment Options窗口 选择其中的library:

点 library path 后的…按钮,

再按Greyed items denote invalid path后的 …

定位到BSF7.dpk所在文件夹,返回到点Add按钮,关闭直至退回到 Delphi 7主界面中。 至此,安装过程完毕。参考图(可拉大图形以观察仔细)

为使我们有更多的皮肤可用,可以到 http://www.2ccc.com/article.asp?articleid=299 下载55套皮肤,网上也有更多的皮肤可用,直接下载后解压缩便可使用。

第二章:建立一个BSF的Form 并测试换肤

我们已经把BSF安装好了,下面我们做个简单的窗体测试一下。 1. 新建一个工程。保存在 C:\\BSF下,工程名为demo1

2. 把下载的皮肤解压缩后放在 C:\\BSF\\Skins里面,以便使用。我这有80套,网上还有更

多。如下图

3. 在默认产生的 Form 上放上bsBusinessSkinForm、bsSkinData、bsStoredSkin,然后设置

bsStoredSkin的Filename,导航到C:\\BSF\\Skins\\下的任一文件夹\\skini.in,本例为C:\\BSF\\Skins\\corona!\\skin.ini为例,再设置bsSkinData的StoredSkin为刚才的

bsStoredSkin,再设置 bsBussinessSkinForm的SkinData为bsSkinData。窗体如下:

保存工程,按F9运行。看看是不是变成这样了:

此方法使用的是 StoredSkin。

再来一个动态改变skin的。

在刚才的Form1中放入 bsSkinOpenDialog、bsSkinMessage和bsSkinButton并设置三控件的 skindata为bsSkinData(刚才的bsSkinData)bsSkinButton1的caption设为”选择皮肤”,双击此按钮,写如下程序:

procedure TForm1.bsSkinButton1Click(Sender: TObject);

begin

if bsSkinOpenDialog1.Execute then begin

bsSkinData1.LoadFromFile( bsSkinOpenDialog1.FileName);

bsSkinMessage1.MessageDlg('更换皮肤成功',(mtinformation),[mbOK],0); end

else

bsSkinMessage1.MessageDlg('为什么不换呀?',(mtError),[mbOK],0);

end;

运行此程序,点“选择皮肤“

等等,那个确定按钮怎么那么别扭呀,好象没蒙上皮肤呀。下面告诉你。

刚刚我们发现那个bsSkinMessage里的确定好象并没有蒙上皮肤,原来是bsSkinMessage里的 CtrlSkinData也要设置成bsSkinData,再试,好了。

完成建立一个可自由换肤的 Form的演示。

像不像MAC ? Apple? ?

第三章:BSF的Menu

现在我们在Form中放入一个 bsSkinMainMenuBar,再放入一个delphi自己的MainMenu,双击MainMenu,输入一些菜单(我比较懒?)

运行一下。

菜单呢,到哪去了?

把bsSkinMainMenuBar 中三项红色的属性(SkinData=bsSkinData,MainMenu=MainMenu1, BusinessSkinForm=bsBusinessSkinForm1)设置一下,再运行,好,现在有了。

在使用bsSkinMainMenuBar时一定要记得三项属性全部设置好,否则可能出现没菜单或菜单项不弹出等尴尬事件。

BussinessSkinForm 入门教程的更多相关文章

  1. wepack+sass+vue 入门教程(三)

    十一.安装sass文件转换为css需要的相关依赖包 npm install --save-dev sass-loader style-loader css-loader loader的作用是辅助web ...

  2. wepack+sass+vue 入门教程(二)

    六.新建webpack配置文件 webpack.config.js 文件整体框架内容如下,后续会详细说明每个配置项的配置 webpack.config.js直接放在项目demo目录下 module.e ...

  3. wepack+sass+vue 入门教程(一)

    一.安装node.js node.js是基础,必须先安装.而且最新版的node.js,已经集成了npm. 下载地址 node安装,一路按默认即可. 二.全局安装webpack npm install ...

  4. Content Security Policy 入门教程

    阮一峰文章:Content Security Policy 入门教程

  5. gulp详细入门教程

    本文链接:http://www.ydcss.com/archives/18 gulp详细入门教程 简介: gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器:她不仅能对网站资源进行优 ...

  6. UE4新手引导入门教程

    请大家去这个地址下载:file:///D:/UE4%20Doc/虚幻4新手引导入门教程.pdf

  7. ABP(现代ASP.NET样板开发框架)系列之2、ABP入门教程

    点这里进入ABP系列文章总目录 基于DDD的现代ASP.NET开发框架--ABP系列之2.ABP入门教程 ABP是“ASP.NET Boilerplate Project (ASP.NET样板项目)” ...

  8. webpack入门教程之初识loader(二)

    上一节我们学习了webpack的安装和编译,这一节我们来一起学习webpack的加载器和配置文件. 要想让网页看起来绚丽多彩,那么css就是必不可少的一份子.如果想要在应用中增加一个css文件,那么w ...

  9. 转载:TypeScript 简介与《TypeScript 中文入门教程》

    简介 TypeScript是一种由微软开发的自由和开源的编程语言.它是JavaScript的一个超集,而且本质上向这个语言添加了可选的静态类型和基于类的面向对象编程.安德斯·海尔斯伯格,C#的首席架构 ...

随机推荐

  1. js对象常用属性和方法:复制一个对象,获取一个对象的所有key和所有value的方法

    记录对象的一些实用使用方法及属性 // Object.assign() 多个对象合并 key相同则后面的覆盖前面的 const target = { a: 1, b: 2 }; const sourc ...

  2. getOwnPropertyDescriptor

    语法 Object.getOwnPropertyDescriptor(obj, prop) 参数 obj 需要查找的目标对象 prop 目标对象内属性名称 返回值 如果指定的属性存在于对象上,则返回其 ...

  3. springboot入门介绍

    1. SpringBoot学习之@SpringBootApplication注解 下面是我们经常见到SpringBoot启动类代码: @SpringBootApplicationpublic clas ...

  4. sqlmap基本信息及参数使用方法

    当给sqlmap这么一个url的时候,它会: 1.判断可注入的参数 2.判断可以用那种SQL注入技术来注入 3.识别出哪种数据库 4.根据用户选择,读取哪些数据 sqlmap支持五种不同的注入模式: ...

  5. 《linux就该这么学》课堂笔记19 iSCSI、MariaDB、无人值守安装

    1.iSCSI技术介绍 硬盘是计算机硬件设备中重要的组成部分之一,硬盘存储设备读写速度的快慢也会对服务器的整体性能造成影响. 为了进一步提升硬盘存储设备的读写速度和性能,人们一直在努力改进物理硬盘设备 ...

  6. Python 编码错误解决方案

    Python 编码错误解决方案 Python UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 7: ordin ...

  7. android 判断是否真正连接到internet(通过检测网址,需要时间)

    if (InetAddress.getByName("www.xy.com").isReachable(timeout)) { } else { }

  8. 如何修改dedecms专题目录默认名称special

    专题有一个聚合的效果,一般会比普通的文章页更符合用户需求.如果用dedecms建专题的话,默认的目录是special,怎么修改修改dedecms专题目录名称呢,比如将/special/改为/s/这样更 ...

  9. MapReduce running in uber mode (jvm重用)

    原文 http://blog.csdn.net/samhacker/article/details/15692003 yarn-site.xml  主要是这几个参数 - mapreduce.job.u ...

  10. luoguP2173 [ZJOI2012]网络 LCT

    链接 luogu 思路 颜色很少,开10个lct分别维护 if (Hash.count(make_pair(u, v)) && Hash[make_pair(u, v)] == col ...