i expect u can get its key...sorry..i donot know about it...

解决方案 »

  1.   

    I will give you my source code on this Saturdat!!!
    Please wait and give me your points.
      

  2.   

    用这个控件可以完成http://alin.heha.net/moydown/component/collformd5.zip
      

  3.   

    错了,应是http://alin.heha.net/moydown/component/coolformd5.zip
      

  4.   

    又错了,SORRY,http://alin.heha.net/mydown/component/coolformd5.zip
      

  5.   

    以form背景为例:
    启动时查找指定文件名的bmp文件,如果存在且尺寸等正确的话,则读入并绘于form的Canvas上。
    其它的(按钮、文字)也是一样的。
      

  6.   

    有源码呢
    另:Windows 有个函数,是专门对不规则窗体的,SKIN只是一种很简单的方法,我的主页上有一个我写的程序,你可以看看,很简单,像WINAMP那样就太简单了,它是规则的窗体.要想做出好的来,如中间是透明的,且鼠标可以在其中点后面的东西,这就要用到掩码图形等,我给你的控件就很好地解决了,源码很容易看懂的
      

  7.   

    to alin: 你的网址在哪?
      

  8.   

    就跟PoolD说的那样,像WINAMP就是那样做的,不过要复杂一点,要将图片的事件与位置关联起来,更复杂的如一些特别的MP3播放器,像手机模样的,像圆盘样的等等,就要特殊处理了,我给你的控件就能处理.我的主页在http://alin.heha.net,应该猜得到的吧^_^
      

  9.   

    我这儿有一篇文章关于delphi换肤的文章:
       首先,在窗体上放一个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.    
      

  10.   

    算了
    我来说几句
    用coolform动态生成form和button就可以实现skin
    如果是winamp,有现成控件
    我修改的版本马上就会出现在我的站点
    示范程序
    http://musicmate.myetang.com/