⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 skinbuild.pas

📁 BusinessSkinForm_v6.07_FS,delphi皮肤
💻 PAS
📖 第 1 页 / 共 5 页
字号:
end;

procedure TSBForm.SaveMenuItem(Index: Integer);
begin
  DefSaveObject(Index);
  with PE, TbsDataSkinMenuItem(SkinData.ObjectList.Items[Index]) do
  begin
    DividerRect := GetRectProperty('dividerrect');
    ItemLO := GetIntProperty('itemleftoffset');
    ItemRO := GetIntProperty('itemrightoffset');
    DividerLO := GetIntProperty('dividerleftoffset');
    DividerRO := GetIntProperty('dividerrightoffset');
    TextRct := GetRectProperty('textrect');
    ImageRct := GetRectProperty('imagerect');
    FontName := GetStrProperty('fontname');
    FontHeight := GetIntProperty('fontheight');
    FontStyle := GetFSProperty('fontstyle');
    FontColor := GetIntProperty('fontcolor');
    ActiveFontColor := GetIntProperty('activefontcolor');
    UnEnabledFontColor := GetIntProperty('unenabledfontcolor');
    StretchEffect := GetBolProperty('stretcheffect');
    InActiveStretchEffect := GetBolProperty('inactivestretcheffect');
    DividerStretchEffect := GetBolProperty('dividerstretcheffect');
    AnimateSkinRect := GetRectProperty('animateskinrect');
    FrameCount :=  GetIntProperty('framecount');
    AnimateInterval := GetIntProperty('animateinterval');
    InActiveAnimation := GetBolProperty('inactiveanimation');
    UseImageColor := GetBolProperty('useimagecolor');
    ImageColor := GetIntProperty('imagecolor');
    ActiveImageColor := GetIntProperty('activeimagecolor');
    InActiveTransparent := GetBolProperty('inactivetransparent');
    //
    CheckImageRect := GetRectProperty('checkimagerect');
    ActiveCheckImageRect := GetRectProperty('activecheckimagerect');
    RadioImageRect := GetRectProperty('radioimagerect');
    ActiveRadioImageRect := GetRectProperty('activeradioimagerect');
    ArrowImageRect := GetRectProperty('arrowimagerect');
    ActiveArrowImageRect := GetRectProperty('activearrowimagerect');
  end;
end;

procedure TSBForm.LoadMainMenuBarItem(Index: Integer);
var
  P: TbsProperty;
begin
  DefLoadObject(Index);
  P := PE.GetProperty('skinrect');
  if P <> nil then P.PropertyType := 'arect';
  with PE, TbsDataSkinMainMenuItem(SkinData.ObjectList.Items[Index]) do
  begin
    AddRectProperty('downrect', DownRect, 'arect');
    AddIntProperty('itemleftoffset', ItemLO, 'int');
    AddIntProperty('itemrightoffset', ItemRO, 'int');
    AddRectProperty('textrect', TextRct, 'arect1');
    if FontName = '' then FontName := 'Arial';
    AddProperty('fontname', FontName, 'string');
    if FontHeight = 0 then FontHeight := 14;
    AddIntProperty('fontheight', FontHeight, 'int');
    AddFSProperty('fontstyle', FontStyle, 'fontstyle');
    AddIntProperty('fontcolor', FontColor, 'skincolor');
    AddIntProperty('activefontcolor', ActiveFontColor, 'skincolor');
    AddIntProperty('downfontcolor', DownFontColor, 'skincolor');
    AddIntProperty('unenabledfontcolor', UnEnabledFontColor, 'skincolor');
    AddBolProperty('stretcheffect', StretchEffect, 'boolean');
    AddRectProperty('animateskinrect', AnimateSkinRect, 'arect');
    AddIntProperty('framecount', FrameCount, 'int');
    AddIntProperty('animateinterval', AnimateInterval, 'int');
    AddBolProperty('inactiveanimation', InActiveAnimation, 'boolean');
  end;
  PE.Cells[0, 0] := '< mainmenubaritem >';
end;

procedure TSBForm.LoadMainMenuItem(Index: Integer);
var
  P: TbsProperty;
begin
  DefLoadObject(Index);
  P := PE.GetProperty('skinrect');
  if P <> nil then P.PropertyType := 'arect';
  P := PE.GetProperty('name');
  if P <> nil then P.PropertyType := 'fixedstring';
  with PE, TbsDataSkinMainMenuItem(SkinData.ObjectList.Items[Index]) do
  begin
    AddRectProperty('downrect', DownRect, 'arect');
    AddIntProperty('itemleftoffset', ItemLO, 'int');
    AddIntProperty('itemrightoffset', ItemRO, 'int');
    AddRectProperty('textrect', TextRct, 'arect1');
    if FontName = '' then FontName := 'Arial';
    AddProperty('fontname', FontName, 'string');
    if FontHeight = 0 then FontHeight := 14;
    AddIntProperty('fontheight', FontHeight, 'int');
    AddFSProperty('fontstyle', FontStyle, 'fontstyle');
    AddIntProperty('fontcolor', FontColor, 'skincolor');
    AddIntProperty('activefontcolor', ActiveFontColor, 'skincolor');
    AddIntProperty('downfontcolor', DownFontColor, 'skincolor');
    AddIntProperty('unenabledfontcolor', UnEnabledFontColor, 'skincolor');
    AddBolProperty('stretcheffect', StretchEffect, 'boolean');
    AddRectProperty('animateskinrect', AnimateSkinRect, 'arect');
    AddIntProperty('framecount', FrameCount, 'int');
    AddIntProperty('animateinterval', AnimateInterval, 'int');
    AddBolProperty('inactiveanimation', InActiveAnimation, 'boolean');
  end;
  PE.Cells[0, 0] := '< mainmenuitem >';
end;

procedure TSBForm.SaveMainMenuItem(Index: Integer);
begin
  DefSaveObject(Index);
  with PE, TbsDataSkinMainMenuItem(SkinData.ObjectList.Items[Index]) do
  begin
    DownRect := GetRectProperty('downrect');
    ItemLO := GetIntProperty('itemleftoffset');
    ItemRO := GetIntProperty('itemrightoffset');
    TextRct := GetRectProperty('textrect');
    FontName := GetStrProperty('fontname');
    FontHeight := GetIntProperty('fontheight');
    FontStyle := GetFSProperty('fontstyle');
    FontColor := GetIntProperty('fontcolor');
    ActiveFontColor := GetIntProperty('activefontcolor');
    DownFontColor := GetIntProperty('downfontcolor');
    UnEnabledFontColor := GetIntProperty('unenabledfontcolor');
    StretchEffect := GetBolProperty('stretcheffect');
    AnimateSkinRect := GetRectProperty('animateskinrect');
    FrameCount :=  GetIntProperty('framecount');
    AnimateInterval := GetIntProperty('animateinterval');
    InActiveAnimation := GetBolProperty('inactiveanimation');
  end;
end;

procedure TSBForm.SaveMainMenuBarItem(Index: Integer);
begin
  SaveMainMenuItem(Index);
end;

procedure TSBForm.LoadControl;
begin
  DefLoadControl(Index);
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinPanelControl
  then
    LoadPanelControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinExPanelControl
  then
    LoadExPanelControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinExPanelControl
  then
    LoadExPanelControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinMenuButtonControl
  then
    LoadMenuButtonControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinButtonControl
  then
    LoadButtonControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinCheckRadioControl
  then
    LoadCheckRadioControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinGaugeControl
  then
    LoadGaugeControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
    TbsDataSkinSplitterControl
  then
    LoadSplitterControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinTrackBarControl
  then
    LoadTrackBarControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinLabelControl
  then
    LoadLabelControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinStdLabelControl
  then
    LoadStdLabelControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinUpDownControl
  then
    LoadUpDownControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinGridControl
  then
    LoadGridControl(Index)
 else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinTabControl
  then
    LoadTabControl(Index)
 else
 if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
    TbsDataSkinSlider
 then
   LoadSliderControl(Index)
 else
 if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinControlBar
  then
    LoadControlBar(Index)
 else
 if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinMainMenuBar
  then
    LoadMainMenuBar(Index)
 else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinCheckListBox
  then
    LoadCheckListBoxControl(Index)
 else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinListBox
  then
    LoadListBoxControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinComboBox
  then
    LoadComboBoxControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinMemoControl
  then
    LoadMemoControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinEditControl
  then
    LoadEditControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinScrollBarControl
  then
    LoadScrollBarControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinSpinEditControl
  then
    LoadSpinEditControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinScrollBoxControl
  then
    LoadScrollBoxControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinTreeView
  then
    LoadTreeViewControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinBevel
  then
    LoadBevelControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinListView
  then
    LoadListViewControl(Index)
  else
  if TbsDataSkinControl(SkinData.CtrlList.Items[Index]) is
     TbsDataSkinRichEdit
  then
    LoadRichEditControl(Index);
end;

procedure TSBForm.DefLoadControl;
begin
  with PE, TbsDataSkinControl(SkinData.CtrlList.Items[Index]) do
  begin
    DeleteProperties(True);
    AddProperty('name', IDName, 'string');
    AddIntProperty('pictureindex', PictureIndex, 'pindex');
    AddIntProperty('maskpictureindex', MaskPictureIndex, 'pindex');
    AddRectProperty('skinrect', SkinRect, 'rectctrl1');
  end;
end;

procedure TSBForm.DefLoadResizeControl(Index: Integer);
begin
  with PE, TbsDataSkinCustomControl(SkinData.CtrlList.Items[Index]) do
  begin
    AddPointProperty('lefttoppoint', LTPoint, 'pointctrl2');
    AddPointProperty('righttoppoint', RTPoint, 'pointctrl2');
    AddPointProperty('leftbottompoint', LBPoint, 'pointctrl2');
    AddPointProperty('rightbottompoint', RBPoint, 'pointctrl2');
    AddRectProperty('clientrect', ClRect, 'rectctrl2');
    AddBolProperty('leftstretch', LeftStretch, 'boolean');
    AddBolProperty('topstretch', TopStretch, 'boolean');
    AddBolProperty('rightstretch', RightStretch, 'boolean');
    AddBolProperty('bottomstretch', BottomStretch, 'boolean');
    AddBolProperty('stretcheffect', StretchEffect, 'boolean');
    AddProperty('stretchtype', SetStretchType(StretchType), 'stretchtype');
  end;
end;

procedure TSBForm.LoadSplitterControl(Index: Integer);
var
  P: TbsProperty;
begin
  DefLoadResizeControl(Index);
  with PE, TbsDataSkinSplitterControl(SkinData.CtrlList.Items[Index]) do
  begin
    P := GetProperty('rightbottompoint');
    P.PropertyType := 'fixed';
    P := GetProperty('clientrect');
    P.PropertyType := 'fixed';
    P := GetProperty('maskpictureindex');
    P.PropertyType := 'fixed';
    AddRectProperty('gripperrect', GripperRect, 'rectctrl1');
    AddBolProperty('grippertransparent', GripperTransparent, 'boolean');
    AddIntProperty('grippertransparentcolor', GripperTransparentColor, 'skincolor');
  end;
  PE.Cells[0, 0] := '< splitter >';  

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -