自己对DELPHI学习的一点体会

源代码在线查看: 实现换肤 (2000年12月28日).txt

软件大小: 771 K
上传用户: pipinooad
关键词: DELPHI
下载地址: 免注册下载 普通下载 VIP

相关代码

				实现换肤 (2000年12月28日) 
				
				网友更新  分类:图形图象   作者: 飘(推荐)  推荐:飘   阅读次数:574  
				(http://www.codesky.net)  
				
				--------------------------------------------------------------------------------
				现在软件的界面设计很流行“换肤”(SKIN),例如ICQ、Winamp、超级解霸等等。这种技术的应用可以最大程度的彰显用户的个性,所以一经推出就大受欢迎。其实这种技术实现起来很简单,下面就是我用Delphi 4.0换肤的例子。 
				
				  首先,在窗体上放一个Image控件,一个Button控件和一个OpenDialog控件。 
				
				  然后,修改属性。将窗体的Caption属性改为Test Skin Program;将Image控件的Align属性改为alClient,将Stretch属性改为True;将Button控件的Caption属性改为Skin。其余属性不变。 
				
				  最后,输入代码吧! 
				
				  unit mainform; 
				
				  interface 
				
				  uses 
				
				  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, 
				
				  StdCtrls, Buttons, ExtCtrls,inifiles, jpeg, Menus; 
				
				  //一定要将inifiles单元加入uses 
				
				  type 
				
				  TForm1 = class(TForm) 
				
				  Image1: TImage; 
				
				  OpenDialog1: TOpenDialog; 
				
				  Button1: TButton; 
				
				  procedure FormCreate(Sender: TObject); 
				
				  procedure Button1Click(Sender: TObject); 
				
				  private 
				
				  { Private declarations } 
				
				  public 
				
				  { Public declarations } 
				
				  end; 
				
				  var 
				
				  Form1: TForm1; 
				
				  implementation 
				
				  {$R*.DFM} 
				
				  procedure TForm1.FormCreate(Sender: TObject); 
				
				  Var 
				
				  SkinINI : Tinifile; 
				
				  SkinPicture : String; 
				
				  begin 
				
				  SkinINI := TiniFile.Create('c:\my documents\skin.ini'); 
				
				  SkinPicture:=SkinINI.ReadString('Interface','skin',''); 
				
				  //将“皮肤”的图片信息存储在SKIN.INI文件中。当然,你还可以将更多的信息存进该文件中。 
				
				  //例如:SKIN.INI 
				
				  //[interface] 
				
				  // skin = c:\my documents\mylove.jpg 
				
				  IF SkinPicture'' then 
				
				  Begin 
				
				  try 
				
				  Image1.Picture.LoadFromFile(SkinPicture); 
				
				  except 
				
				  end; 
				
				  End; 
				
				  SkinINI.Free; 
				
				  end; 
				
				  procedure TForm1.Button1Click(Sender: TObject); 
				
				  Var 
				
				  SkinINI : Tinifile; 
				
				  SkinPicture : String; 
				
				  Success : Boolean; //指示换肤是否成功 
				
				  begin 
				
				  SkinINI := TiniFile.Create('c:\my documents\skin.ini'); 
				
				  SkinPicture:=SkinINI.ReadString('Interface','skin',''); 
				
				  OpenDialog1.Filter:='All Image File(*.jpg;*.jpeg;*.bmp;*.ico)|*.jpg;*.jpeg;*.bmp;*.ico|'+ 
				
				  'Bitmaps(*.bmp)|*.bmp|'+ 
				
				  'Jpeg Image File(*.jpg;*.jpeg)|*.jpeg;*.jpg|'+ 
				
				  'Icons(*.ico)|*.ico'; 
				
				  Success:=True; 
				
				  IF OpenDialog1.Execute then 
				
				  Begin 
				
				  try 
				
				  Image1.Picture.LoadFromFile(OpenDialog1.Filename); 
				
				  except 
				
				  Application.MessageBox('This file is not load!','Error!',MB_OK); 
				
				  Success:=False; 
				
				  end; 
				
				  IF Success then SkinINI.WriteString('interface','skin',OpenDialog1.Filename); 
				
				  //若换肤成功,将图片信息存进skin.ini文件中 
				
				  End; 
				
				  SkinINI.Free; 
				
				  end; 
				
				  end. 
				 
				 
				
							

相关资源