📄 skinbuild.pas
字号:
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 + -