VCLSkin组件使用、Delphi界面美化图文教程.doc_第1页
VCLSkin组件使用、Delphi界面美化图文教程.doc_第2页
VCLSkin组件使用、Delphi界面美化图文教程.doc_第3页
VCLSkin组件使用、Delphi界面美化图文教程.doc_第4页
VCLSkin组件使用、Delphi界面美化图文教程.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

VCLSkin是个方便而且功能强大的界面加强型组件包。只要在程序的任何一个窗体里加入SkinData组件,设置好相关属性,则所有这个程序里出现的窗体(包括对话框)都具有设置好的界面风格。SkinStore组件又可以把一些皮肤文件预先存在里面,供SkinData随时调用,表现出程序的多种风格。下面简单地介绍它的用法。基本安装: 1、对于单个控件,Componet-install component.-PAS或DCU文件-install; 2、对于带*.dpk文件的控件包,File-Open(下拉列表框中选*.dpk)-install即可; 3、对于带*.bpl文件的控件包,Install Packages-Add-bpl文件名即可; 4、如果以上Install按钮为失效的话,试试Compile按钮; 5、是run time lib则在option下的packages下的runtimepackes加之。 如果编译时提示文件找不到的话,一般是控件的安装目录不在Delphi的Lib目录中,有两种方法可以解决: 1、反安装的源文件拷入到Delphi的Lib目录下; 2、或者Tools-Environment Options中把控件源代码路径加入到Delphi的Lib目录中即可。 注意:所安装的控件是否与你所用的Delphi版本相适应。 RxLib的安装: 首先在Delphi 5 的 IDE 中将以前版本的 Rxlib 反安装掉,删除 RXCTL5.BPL、RXDB5.BPL、 RXBDE5.BPL、DCLRX5.BPL、 DCLRXDB5.BPL 和DCLRXBD5.BPL。 打开 Rx 的运行包 RXCTL5.DPK,在 Package 窗口中按 Compile 按钮编译 RXCTL5.DPK ,然后用同样方法编译另两个运行包RXDB5.DPK 和 RXBDE5.DPK ,将编译后的三个 BPL 文件放到搜索路径中,如 WINDOWSSYSTEM等。 在编译完运行包后你必须将 RX 的设计期包安装到 IDE 环境中。 打开 Rx 的设计期包 DCLRX5.DPK,在 Package 窗口中按 Compile 按钮编译,然后按 Install按钮将设计期包注册到组件面板中。用同样的方法安装 DCLRXDB5.DPK 和 DCLRXBD5.DPK。 注意:不要在 Delphi IDE 中保存包资源(package sources)! 控件删除: 在Component/Install Packages中删除。 选Component/configure Palette 有pages和components两个区域 双击components区域,选中要删除得控件,下面有得Delete按钮 但系统提供的控件只能Hide,不能delete。 打开控件所在的包文件(*.dpk),从中删除控件那个文件,再重新编译该包即可 如果是整个控件包都要删除的话,project-Option-Packages,删掉那个packages,That would be ok1. VCLSkin综述VCLSkin 是一个能让Delphi程序变得非常漂亮的控件包. 它允许允许软件开发人员不用修改程序代码便把软件界面变得非常漂亮。它的美化支持窗体和控件和菜单。VCLSkin同时也提供了大量高质量的skin(皮肤)让你应用于你的程序。2. VCLSkin特点VCLSkin 是一个用于让用户的程序界面更加漂亮的扩展控件。 它允许软件开发人员不用修改源代码就能让他们的程序界面更加漂亮。一个标准的程序界面能在窗体放入VCLSkin控件后变得非常漂亮,而这公公需要几分钟的时间。VCLSkin 能做些什么 ?不像其它控件那样,你需要修改源代码才能构建一个漂亮的界面, VCLskin 能让Delphi的标准控件在一下子就变得非常漂亮,而这一切都不用修改源代码。VCLSkin 支持以下的窗体: * Delphi Form * MDIform . (normal,Maximized, MInimized) * Common Windows dialogs (Open/Save,Font,Print,Color). * MsgBox. * Exception MsgBox.VCLSkin 支持的标准控件: * The title bar of TForm * The title bar buttons * The borders of Tform * Tbutton,TBitbtn. * Tradiobutton and Tcheckbox * Tmainmenu and Tpopupmenu * Toolbar buttons * TTabcontrol and TPageControl * T Progressbar * TStatusbar * TCustomCombox,Tcombobox, TDbCombobox * TPanel and TGroupbox * TMemo, TListBox,TListView,TTreeview * TRadioGroup , TDBRadioGroup. * TCustomGrid,TStringgrid,TDrawgrid,Tdbgrid. * Third party component, Enlib, AdvGrid .同时也支持大量的第三方控件。3.安装你可以像安装其它控件一样安装这夽控件,其实就这几步: 1. 解压缩 Vclskin2.zip 到任意目录 2. 在 Delphi IDE 环境中选择菜单 File. Open., 然后找到连接库 vclskindX.dpk, 按着点击Compile按钮。 3. 在 Environment 添加VCLSkin控件所在的路径。*1. TSkinDataTSkinData 主要用于美化你的程序, 只要把TSkinData控件放下去,它就能自动美化所有窗体。属性Active: 使用或取消对程序的美化。DisableTag: 取消对某个特定的组件的美化; 把组件的Tag属性设为99就行了。(control.tag mod 100=disabletag)SkinControls: 指定哪类组件能被美化.SkinFile: skin(皮肤)文件的包含路径的文件名,在运行时加载。SkinStore: 在设计模式时储备的skin文件.SkinFormType: 能使用多种美化方式.方法LoadFromStream(Stream: TStream);LoadFromFile(value:string);LoadFromCollection(astore:TSkinStore;aindex:integer);在运行时装载skin文件.UpdateSkinControl(fParent:Tform);UpdateMenu(fParent:Tform);在运行时组件创建时进行美化。事件OnFormSkin(Sender:TObject;aName:string;Var DoSkin:boolean);OnFormSkin 事件的发生先于美化窗体, 如果 Doskin 为 true, Vclskin 就会美化这个窗体, 如果为false,Vclskin 就会跳过这个窗体. aName 是窗体的类名.OnSkinChangned(Sender:TObject);OnSkinChanged 发生在skin文件改变之后。2. TSkinStoreTSkinStore 能让你在设计模式时储存多个skin文件。TSkinData 能在运行时从 TSkinStore 装载skin文件:TSkinData.LoadFromCollection(astore:TSkinStore;aindex:integer),3. 怎么美化程序界面你可以在几分钟内构建一个漂亮的程序.1 把 TSkindata 控件放在主窗体上。2 设置 Skindata.skinstore 属性 , 把skin文件储存在你的程序中。3 设置 Skindata.active = true4 编译运行你的程序。4. VCLSkin FAQ1 如果我的工程中有14个窗体,用不用每个窗体都放一个skin控件?不用,你只需要放置一个Tskindata在你的主窗体,Vclskin就能自动美化每个窗体。2 怎样美化一个内嵌的窗体 ?Vclskin 不能自动美化内嵌窗体,你要手动控制它。压缩包中有一个NestedForm的例子,讲的是在运行状态美化内嵌窗体、框架的。3 怎样美化动态控件 ?你需要手动控制它。代码如下:control:=Tmycontrol.create(form1);skindata1.UpdateSkincontrol(form1); / add this line to skin dynamic control.4 怎样美化依靠窗体 ?Vclskin 支持停靠窗体. 例程代码如下:procedure TDockableForm.FormShow(Sender: TObject);beginif MainForm.skindata1.active then MainForm.skindata1.skinform(handle);end;5 怎么美化动态的右键菜单 ?例程代码如下:popup:=Tpopupmenu.create(form1);. add menuiteskindata1.UpdateMenu(form1); /add this linepopup.popup(x,y);6 怎样美化动态窗体 ?Vclskin 可以美化动态窗体 , 但不能自动美化内嵌窗体. 点击这儿查看如何美化内嵌窗体.7 找不到文件 c:program filesborlanddelphi7SMwinskindata.pasDelphi7 试用版与Delphi7正式版的Dcu文件格式是不一样的。如果你使用的是正式版,你可以安装一个演示包。vclskin2.zip.如果你使用的是试用版,你可以安装一个演示包。 D7trial.zip.8 使用 FastReport 时,出现了“无效操作,控件没有父窗体的的错误提示 ?设置 TSkindata.skincontrols.xcFastReport = true 就可以解决这个问题。9 使用 ReportBuilder 出现了“无效操作,控件没有父窗体的错误提示?你可以在 TSkindata.OnformSkin 事件中取消美化这个控件。 代码如下 :procedure Tform1.SkinData1FormSkin(Sender: TObject;aName: String; var DoSkin: Boolean);begin/TppPrintPreview 就是要取消美化的窗体名称。if aName=TppPrintPreview then doskin:=false;end;10 如何存取skin文件的颜色?你可以借助 Tskindata.colors 属性来存取颜色。比如说 , 窗体的背景色是 : skindata.ColorscsButtonFace.TShemeColor=(csText,csTitleTextActive,csTitleTextNoActive,csButtonFace,csButtonText,csButtonHilight,csButtonlight,csButtonShadow,csButtonDkshadow,csSelectText,csSelectBg,csHilightText,csHilight,csMenuBar,csMenuBarText,csMenuText,csMenubg,csScrollbar,csTextDisable);TShemeColors=arraycsText.csTextDisable of Tcolor;Skindata.Colors: TShemeColors;11 用户能自定义那些可视化控件的外观吗?你可以使用 skin builder自定义细节.12 怎样取消美化某个窗体或控件?设置 form.tag=99 取消 美化这个窗体。13 如何在美化一个工程的窗体标题栏和菜单的风格?设置 TSkindata.skincontrols.xcMainmenu = false先建立一个新工程,加入一些常见的组件。运行结果的界面如图9.18所示。然后加入一个SkinData控件,把Active属性设为True。再单击SkinStore属性的带省略号的按钮,选择VCLSkin自带的一个皮肤文件macos.skn。然后,编译,运行,结果如图9.19所示。图9.18 原始程序 图9.19 加入VCLSkin组件后的效果此处将程序界面从原来古板的样貌变成Mac Os风格没有用一行代码,只设了SkinData的属性。下面我们结合SkinStore组件讲讲程序中“换肤”的做法。在窗体上加入一个SkinStore组件,在Object Inspector中单击Store后面的带省略号的按钮,出现如图9.20所示的窗体。单击图标,新生成一个SkinStore,可以像上面设置SkinData的SkinStore那样设置好它的属性。创建多个SkinStore,存入多个皮肤。然后在窗体的按钮上加入如下代码(代码的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论