📄 main.pas
字号:
begin
ACanvas.Pen.Color := clWhite;
ACanvas.TextRect (AButtonRect,
(AButtonRect.Left + AButtonRect.Right - ACanvas.TextWidth (cStr[9-AButtonIndex])) div 2,
(AButtonRect.Top + AButtonRect.Bottom - ACanvas.TextHeight (cStr[9-AButtonIndex])) div 2,
cStr[9-AButtonIndex]);
end;
procedure TForm1.xpCheckBox19Click(Sender: TObject);
begin
if (Sender as TxpCheckBox).Checked then
xpWindow1.OnCustomDrawTitle := xpWindow1CustomDrawTitle
else
xpWindow1.OnCustomDrawTitle := nil;
xpWindow1.ForceReDraw;
end;
procedure TForm1.xpWindow1CustomDrawTitle(Sender: TObject;
ACanvas: TCanvas; ATitleRect: TRect; AActive: Boolean);
begin
ACanvas.Pen.Color := clMaroon;
ACanvas.Pen.Width := 3;
ACanvas.MoveTo (ATitleRect.Left, ATitleRect.Top);
ACanvas.LineTo (ATitleRect.Right, ATitleRect.Bottom);
ACanvas.MoveTo (ATitleRect.Left, ATitleRect.Bottom);
ACanvas.LineTo (ATitleRect.Right, ATitleRect.Top);
end;
procedure TForm1.xpButton5Click(Sender: TObject);
begin
if Sender = xpButton5 then
ColorDialog1.Color := xpWindow1.xpCaption.ActiveStartColor
else
ColorDialog1.Color := xpWindow1.xpCaption.ActiveEndColor;
if ColorDialog1.Execute then
begin
if Sender = xpButton5 then
xpWindow1.xpCaption.ActiveStartColor := ColorDialog1.Color
else
xpWindow1.xpCaption.ActiveEndColor := ColorDialog1.Color;
end;
end;
procedure TForm1.ComboBox3Change(Sender: TObject);
begin
xpWindow1.xpCaption.GradientFill := true;
if not xpCheckBox16.Checked then
begin
xpCheckBox16.Checked := true;
xpCheckBox16Click (xpCheckBox16);
end;
xpWindow1.xpCaption.FillDirection := TFillDirection (ComboBox3.ItemIndex);
end;
procedure TForm1.xpCheckBox20Click(Sender: TObject);
var
OldCheck : Boolean;
begin
if xpCheckBox21.Checked then
begin
OldCheck := (Sender as TxpCheckBox).Checked;
xpCheckBox21.Checked := False;
xpCheckBox21Click (xpCheckBox21);
(Sender as TxpCheckBox).Checked := OldCheck;
end;
if not xpCheckBox16.Checked then
begin
xpCheckBox16.Checked := true;
xpCheckBox16Click (xpCheckBox16);
end;
xpWindow1.xpCaption.GradientFill := (Sender as TxpCheckBox).Checked;
ComboBox3.Enabled := (Sender as TxpCheckBox).Checked;
xpButton5.Enabled := (Sender as TxpCheckBox).Checked;
xpButton6.Enabled := (Sender as TxpCheckBox).Checked;
Label11.Enabled := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox21Click(Sender: TObject);
var
OldCheck : Boolean;
begin
if xpCheckBox20.Checked then
begin
OldCheck := (Sender as TxpCheckBox).Checked;
xpCheckBox20.Checked := False;
xpCheckBox20Click (xpCheckBox20);
(Sender as TxpCheckBox).Checked := OldCheck;
end;
if not xpCheckBox16.Checked then
begin
xpCheckBox16.Checked := true;
xpCheckBox16Click (xpCheckBox16);
end;
if (Sender as TxpCheckBox).Checked then
begin
if xpWindow1.xpCaption.Image.Empty then
xpBitBtn1Click (nil);
if xpWindow1.xpCaption.Image.Empty then
begin
(Sender as TxpCheckBox).Checked := False;
Exit;
end;
ComboBox4.ItemIndex := Integer (xpWindow1.xpCaption.ImageAlign);
end
else
begin
xpWindow1.xpCaption.Image.ReleaseHandle;
end;
ComboBox4.Enabled := (Sender as TxpCheckBox).Checked;
xpBitBtn1.Enabled := (Sender as TxpCheckBox).Checked;
xpCheckBox22.Enabled := (Sender as TxpCheckBox).Checked;
Label12.Enabled := (Sender as TxpCheckBox).Checked;
xpWindow1.ForceReDraw;
end;
procedure TForm1.xpBitBtn1Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute then
begin
xpWindow1.xpCaption.Image.ReleaseHandle;
xpWindow1.xpCaption.Image.LoadFromFile (OpenPictureDialog1.FileName);
if Sender <> nil then xpWindow1.ForceReDraw;
end;
end;
procedure TForm1.ComboBox4Change(Sender: TObject);
begin
xpWindow1.xpCaption.ImageAlign := TgbImageAlign (ComboBox4.ItemIndex);
end;
procedure TForm1.xpCheckBox22Click(Sender: TObject);
begin
xpWindow1.xpCaption.ImageTransparent := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpButton7Click(Sender: TObject);
begin
if not xpCheckBox8.Checked then
begin
xpCheckBox8.Checked := true;
xpCheckBox8Click (xpCheckBox8);
end;
if Sender = xpButton7 then
ColorDialog1.Color := xppSample.StartColor
else
ColorDialog1.Color := xppSample.EndColor;
if ColorDialog1.Execute then
begin
if Sender = xpButton7 then
xppSample.StartColor := ColorDialog1.Color
else
xppSample.EndColor := ColorDialog1.Color;
end;
end;
procedure TForm1.xpButton9Click(Sender: TObject);
begin
if not xpCheckBox7.Checked then
begin
xpCheckBox7.Checked := true;
xpCheckBox7Click (xpCheckBox7);
end;
if Sender = xpButton9 then
ColorDialog1.Color := xppSample.TitleStartColor
else
ColorDialog1.Color := xppSample.TitleEndColor;
if ColorDialog1.Execute then
begin
if Sender = xpButton9 then
xppSample.TitleStartColor := ColorDialog1.Color
else
xppSample.TitleEndColor := ColorDialog1.Color;
end;
end;
procedure TForm1.xpCheckBox24Click(Sender: TObject);
begin
xpSampleButton.Gradient := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox23Click(Sender: TObject);
begin
xpSampleButton.Enabled := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox25Click(Sender: TObject);
begin
xpSampleBitBtn.Gradient := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox26Click(Sender: TObject);
begin
xpSampleBitBtn.Enabled := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox27Click(Sender: TObject);
begin
xpSampleCheckBox.UnderLineOnActive := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox28Click(Sender: TObject);
begin
xpSampleCheckBox.ShadowText := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox30Click(Sender: TObject);
begin
xpEdit1.Rounded := xpCheckBox30.Checked;
end;
procedure TForm1.xpCheckBox31Click(Sender: TObject);
begin
if xpCheckBox31.Checked then
begin
xpEdit1.Style := esXP;
end
else
begin
xpEdit1.Style := esFlat;
end;
end;
procedure TForm1.xpPanel17TitleClick(Sender: TObject);
begin
(Sender as TxpPanel).Minimized := not (Sender as TxpPanel).Minimized;
end;
procedure TForm1.xpCheckBox29Click(Sender: TObject);
begin
xppSample.Movable := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox32Click(Sender: TObject);
begin
xppSample.Sizable := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox33Click(Sender: TObject);
begin
if (Sender as TxpCheckBox).Checked then
xppSample.TitleButtons := xppSample.TitleButtons + [TTitleButton ((Sender as TxpCheckBox).Tag)]
else
xppSample.TitleButtons := xppSample.TitleButtons - [TTitleButton ((Sender as TxpCheckBox).Tag)];
end;
procedure TForm1.xppSampleAfterClose(Sender: TObject);
begin
Button1.Visible := true;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Button1.Visible := False;
xppSample.Visible := true;
end;
procedure TForm1.ComboBox5Change(Sender: TObject);
begin
if ComboBox5.ItemIndex in [1, 2] then
begin
RadioButton1.Checked := true;
RadioButton2.Enabled := False;
RadioButton3.Enabled := False;
RadioButton4.Enabled := False;
Label14.Enabled := False;
ComboBox6.Enabled := False;
Button2.Enabled := False;
CheckBox1Click (self);
end
else
begin
RadioButton2.Enabled := true;
RadioButton3.Enabled := true;
RadioButton4.Enabled := true;
Label14.Enabled := (ComboBox5.ItemIndex = 3);
ComboBox6.Enabled := (ComboBox5.ItemIndex = 3);
Button2.Enabled := (ComboBox5.ItemIndex = 3);
end;
if ComboBox5.ItemIndex <> 3 then
begin
xpPageControl1.TabWidth := 0;
xpPageControl1.TabHeight := 0;
end
else
begin
if RadioButton1.Checked or RadioButton2.Checked then
begin
xpPageControl1.TabWidth := cTabWidth;
xpPageControl1.TabHeight := cTabHeight;
end
else
begin
xpPageControl1.TabWidth := cTabHeight;
xpPageControl1.TabHeight := cTabWidth;
end;
end;
xpPageControl1.Style := TxpPageControlStyle (ComboBox5.ItemIndex);
end;
procedure TForm1.CheckBox1Click(Sender: TObject);
begin
xpPageControl1.ShowHint := CheckBox1.Checked;
end;
procedure TForm1.ComboBox6Change(Sender: TObject);
begin
xpPageControl1.TabTextAlignment := TAlignment (ComboBox6.ItemIndex);
end;
procedure TForm1.CheckBox2Click(Sender: TObject);
begin
if CheckBox2.Checked then
xpPageControl1.ImageList := ImageList2
else
xpPageControl1.ImageList := nil;
end;
procedure TForm1.CheckBox3Click(Sender: TObject);
begin
xpPageControl1.HotTrack := CheckBox3.Checked;
end;
procedure TForm1.ComboBox7Change(Sender: TObject);
begin
(xpPageControl1.ActivePage as TxpTabSheet).BGStyle := TxpTabBGStyle (ComboBox7.ItemIndex);
end;
procedure TForm1.CheckBox4Click(Sender: TObject);
begin
xpPageControl1.OwnerDraw := CheckBox4.Checked;
end;
procedure TForm1.xpPageControl1Change(Sender: TObject);
begin
ComboBox7.ItemIndex := Integer ((xpPageControl1.ActivePage as TxpTabSheet).BGStyle);
end;
procedure TForm1.xpPageControl1DrawItem(Control: TWinControl;
Index: Integer; ACanvas: TControlCanvas; ARect: TRect;
State: TOwnerDrawState);
begin
InflateRect (ARect, -1, -2);
if Index = xpPageControl1.ActivePage.TabIndex then InflateRect (ARect, 2, 0);
Dec (ARect.Top, 1);
GradientFillRect (ACanvas, ARect, clWhite, clSilver, fdVerticalFromCenter, 30);
InflateRect (ARect, 1, 1);
ACanvas.Pen.Color := xpPageControl1.BorderColor;
ACanvas.Brush.Style := bsCLEAR;
ACanvas.Rectangle (ARect.Left, ARect.Top, ARect.Right, ARect.Bottom);
ACanvas.Font.Color := clNavy;
ACanvas.Font.Style := [fsBold];
ACanvas.TextOut (ARect.Left+5, ARect.Top + 4, 'Tab ' + IntToStr (Index+1));
end;
procedure TForm1.RadioButton2Click(Sender: TObject);
begin
xpPageControl1.TabPosition := tpBottom;
if ComboBox5.ItemIndex = 3 then
begin
xpPageControl1.TabWidth := cTabWidth;
xpPageControl1.TabHeight := cTabHeight;
end;
end;
procedure TForm1.RadioButton3Click(Sender: TObject);
begin
xpPageControl1.TabPosition := tpLeft;
if ComboBox5.ItemIndex = 3 then
begin
xpPageControl1.TabWidth := cTabHeight;
xpPageControl1.TabHeight := cTabWidth;
end;
end;
procedure TForm1.RadioButton4Click(Sender: TObject);
begin
xpPageControl1.TabPosition := tpRight;
if ComboBox5.ItemIndex = 3 then
begin
xpPageControl1.TabWidth := cTabHeight;
xpPageControl1.TabHeight := cTabWidth;
end;
end;
procedure TForm1.RadioButton1Click(Sender: TObject);
begin
xpPageControl1.TabPosition := tpTop;
if ComboBox5.ItemIndex = 3 then
begin
xpPageControl1.TabWidth := cTabWidth;
xpPageControl1.TabHeight := cTabHeight;
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
ColorDialog1.Color := xpPageControl1.BorderColor;
if ColorDialog1.Execute then
xpPageControl1.BorderColor := ColorDialog1.Color;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
ColorDialog1.Color := (xpPageControl1.ActivePage as TxpTabSheet).Color;
if ColorDialog1.Execute then
begin
(xpPageControl1.ActivePage as TxpTabSheet).Color := ColorDialog1.Color;
if ComboBox7.ItemIndex <> 0 then
begin
ComboBox7.ItemIndex := 0;
ComboBox7Change (Self);
end;
end;
end;
procedure TForm1.xpCheckBox37Click(Sender: TObject);
begin
if xpCheckBox37.Checked then
begin
xpComboBox1.XPStyle.InActiveButtonColor := $00FACDAD;
xpComboBox1.XPStyle.InActiveBorderColor := $00FADDDD;
xpComboBox1.XPStyle.ButtonStyle := cbsXP;
end
else
begin
xpComboBox1.XPStyle.InActiveButtonColor := clBtnFace;
xpComboBox1.XPStyle.InActiveBorderColor := clBtnFace;
xpComboBox1.XPStyle.ButtonStyle := cbsFlat;
end
end;
procedure TForm1.ComboBox8Change(Sender: TObject);
begin
xpComboBox1.XPStyle.BGStyle := TComboBGStyle (ComboBox8.ItemIndex);
end;
procedure TForm1.xpCheckBox36Click(Sender: TObject);
begin
xpComboBox1.Enabled := xpCheckBox36.Checked;
end;
procedure TForm1.ComboBox9Change(Sender: TObject);
begin
xpComboBox1.XPStyle.SelGradientFillDir := TFillDirection (ComboBox9.ItemIndex);
xpComboBox1.SetFocus;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -