本帖最后由 a5312010 于 2011-06-07 15:23:33 编辑

解决方案 »

  1.   

    vclskin自带一个帮助文件的,自己好好看看,上面列举了各种情况的使用
      

  2.   

    看demo...
    control:=Tmycontrol.create(form1); 
    skindata1.UpdateSkincontrol(form1);   
      

  3.   


    DEMO里有一个SkinList.exe的,就是动态换皮肤的
      

  4.   

    vclskin是在现有的FORM的基础上,重新创建一个新的FORM。并使用vclskin自身的控件。可以使用其预设的几种皮肤。看看DEMO自己就可以处理了。
      

  5.   

    SkinStore  控件用来加载需要的几个皮肤【就像是imagelist】
    SkinData  的SkinStore属性设置一个默认的皮肤程序运行时更换皮肤可以这样做:procedure TForm2.Button1Click(Sender: TObject);
    begin
    form1.SkinData1.LoadFromCollection(form1.SkinStore1,0);
    end;procedure TForm2.Button2Click(Sender: TObject);
    begin
    form1.SkinData1.LoadFromCollection(form1.SkinStore1,1);
    end;procedure TForm2.Button3Click(Sender: TObject);
    begin
    form1.SkinData1.LoadFromCollection(form1.SkinStore1,2);
    end;
      

  6.   

    VCLSkin的active false一下在赋值true激活一下就更新了
      

  7.   

    我直接把它false 然后再true的不行,但是写到按钮里面点两下就行,是不是位置不对
      

  8.   

    试试  
      SkinData1.DoSkinChanged ;   //更新一下改变
      Application.ProcessMessages;