📄 main.pas
字号:
unit main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, xpPanel, StdCtrls, xpWindow, xpButton, ComCtrls,
xpCheckBox, xpGraphUtil, ShellApi, Spin, xpBitBtn, ExtDlgs, xpEdit,
xpPages, xpCombo;
type
TForm1 = class(TForm)
xpPanel1: TxpPanel;
xpPanel2: TxpPanel;
xpWindow1: TxpWindow;
Label1: TLabel;
xppControls: TxpPanel;
xppWindow: TxpPanel;
xppPanel: TxpPanel;
xppSample: TxpPanel;
ImageList1: TImageList;
xpPanel10: TxpPanel;
xpCheckBox11: TxpCheckBox;
Label7: TLabel;
xpCheckBox12: TxpCheckBox;
xpCheckBox13: TxpCheckBox;
xpCheckBox14: TxpCheckBox;
xpCheckBox15: TxpCheckBox;
Label8: TLabel;
SpinEdit1: TSpinEdit;
xpPanel11: TxpPanel;
xpCheckBox16: TxpCheckBox;
xpCheckBox17: TxpCheckBox;
xpCheckBox18: TxpCheckBox;
FontDialog1: TFontDialog;
ColorDialog1: TColorDialog;
xpButton4: TxpButton;
Label9: TLabel;
SpinEdit2: TSpinEdit;
Label10: TLabel;
SpinEdit3: TSpinEdit;
xpPanel12: TxpPanel;
xpCheckBox19: TxpCheckBox;
xpCheckBox20: TxpCheckBox;
xpButton5: TxpButton;
xpButton6: TxpButton;
ComboBox3: TComboBox;
xpCheckBox21: TxpCheckBox;
ComboBox4: TComboBox;
xpBitBtn1: TxpBitBtn;
OpenPictureDialog1: TOpenPictureDialog;
xpCheckBox22: TxpCheckBox;
Label11: TLabel;
Label12: TLabel;
xpPanel13: TxpPanel;
xpPanel14: TxpPanel;
xpPanel15: TxpPanel;
xpSampleButton: TxpButton;
xpSampleBitBtn: TxpBitBtn;
xpSampleCheckBox: TxpCheckBox;
xpCheckBox24: TxpCheckBox;
xpCheckBox23: TxpCheckBox;
xpCheckBox25: TxpCheckBox;
xpCheckBox26: TxpCheckBox;
xpCheckBox27: TxpCheckBox;
xpCheckBox28: TxpCheckBox;
xpPanel16: TxpPanel;
xpCheckBox30: TxpCheckBox;
xpCheckBox31: TxpCheckBox;
xpEdit1: TxpEdit;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
xpPanel17: TxpPanel;
xpButton2: TxpButton;
xpButton1: TxpButton;
xpButton3: TxpButton;
xpPanel18: TxpPanel;
Label16: TLabel;
Label17: TLabel;
Label18: TLabel;
Label19: TLabel;
xpPanel19: TxpPanel;
Label20: TLabel;
Label21: TLabel;
Panel1: TPanel;
Panel5: TPanel;
Panel6: TPanel;
Panel7: TPanel;
xpPanel8: TxpPanel;
xpCheckBox5: TxpCheckBox;
xpCheckBox6: TxpCheckBox;
xpCheckBox7: TxpCheckBox;
xpCheckBox8: TxpCheckBox;
Panel8: TPanel;
xpPanel7: TxpPanel;
xpCheckBox1: TxpCheckBox;
xpCheckBox2: TxpCheckBox;
xpCheckBox3: TxpCheckBox;
xpCheckBox4: TxpCheckBox;
Panel9: TPanel;
xpPanel3: TxpPanel;
xpCheckBox9: TxpCheckBox;
xpCheckBox10: TxpCheckBox;
Panel10: TPanel;
xpPanel4: TxpPanel;
xpCheckBox29: TxpCheckBox;
xpCheckBox32: TxpCheckBox;
xpPanel5: TxpPanel;
xpCheckBox33: TxpCheckBox;
xpCheckBox34: TxpCheckBox;
xpCheckBox35: TxpCheckBox;
Panel11: TPanel;
Panel12: TPanel;
xpPanel9: TxpPanel;
Label2: TLabel;
Label3: TLabel;
ComboBox1: TComboBox;
ComboBox2: TComboBox;
xpButton7: TxpButton;
xpButton8: TxpButton;
xpButton9: TxpButton;
xpButton10: TxpButton;
Panel13: TPanel;
Panel14: TPanel;
Panel15: TPanel;
Button1: TButton;
xpButton11: TxpButton;
xppPages: TxpPanel;
ImageList2: TImageList;
xpPageControl1: TxpPageControl;
xpTabSheet1: TxpTabSheet;
Label4: TLabel;
xpTabSheet2: TxpTabSheet;
xpTabSheet3: TxpTabSheet;
Label5: TLabel;
xpTabSheet4: TxpTabSheet;
Label6: TLabel;
GroupBox3: TGroupBox;
Label13: TLabel;
ComboBox5: TComboBox;
GroupBox1: TGroupBox;
RadioButton1: TRadioButton;
RadioButton2: TRadioButton;
RadioButton3: TRadioButton;
RadioButton4: TRadioButton;
GroupBox2: TGroupBox;
Label14: TLabel;
Label15: TLabel;
CheckBox1: TCheckBox;
ComboBox6: TComboBox;
CheckBox2: TCheckBox;
Button2: TButton;
CheckBox3: TCheckBox;
Button3: TButton;
CheckBox4: TCheckBox;
ComboBox7: TComboBox;
xpPanel6: TxpPanel;
xpCheckBox37: TxpCheckBox;
xpComboBox1: TxpComboBox;
ImageList3: TImageList;
Label22: TLabel;
ComboBox8: TComboBox;
xpCheckBox36: TxpCheckBox;
ComboBox9: TComboBox;
Label23: TLabel;
procedure xpButton1Click(Sender: TObject);
procedure xpCheckBox1Click(Sender: TObject);
procedure xpCheckBox5Click(Sender: TObject);
procedure xpCheckBox6Click(Sender: TObject);
procedure xpCheckBox7Click(Sender: TObject);
procedure xpCheckBox8Click(Sender: TObject);
procedure xpCheckBox9Click(Sender: TObject);
procedure xpCheckBox10Click(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
procedure ComboBox2Change(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Label7Click(Sender: TObject);
procedure Label8Click(Sender: TObject);
procedure xpCheckBox11Click(Sender: TObject);
procedure xpCheckBox15Click(Sender: TObject);
procedure SpinEdit1Change(Sender: TObject);
procedure xpCheckBox16Click(Sender: TObject);
procedure xpCheckBox17Click(Sender: TObject);
procedure xpCheckBox18Click(Sender: TObject);
procedure xpButton4Click(Sender: TObject);
procedure SpinEdit2Change(Sender: TObject);
procedure SpinEdit3Change(Sender: TObject);
procedure xpWindow1CustomButtonClick(Sender: TObject;
AButtonIndex: Integer);
procedure xpWindow1CustomButtonDraw(Sender: TObject; ACanvas: TCanvas;
AButtonRect: TRect; AButtonIndex: Integer;
AState: TTitleButtonState);
procedure xpCheckBox19Click(Sender: TObject);
procedure xpWindow1CustomDrawTitle(Sender: TObject; ACanvas: TCanvas;
ATitleRect: TRect; AActive: Boolean);
procedure xpButton5Click(Sender: TObject);
procedure ComboBox3Change(Sender: TObject);
procedure xpCheckBox20Click(Sender: TObject);
procedure xpCheckBox21Click(Sender: TObject);
procedure xpBitBtn1Click(Sender: TObject);
procedure ComboBox4Change(Sender: TObject);
procedure xpCheckBox22Click(Sender: TObject);
procedure xpButton7Click(Sender: TObject);
procedure xpButton9Click(Sender: TObject);
procedure xpCheckBox24Click(Sender: TObject);
procedure xpCheckBox23Click(Sender: TObject);
procedure xpCheckBox25Click(Sender: TObject);
procedure xpCheckBox26Click(Sender: TObject);
procedure xpCheckBox27Click(Sender: TObject);
procedure xpCheckBox28Click(Sender: TObject);
procedure xpCheckBox30Click(Sender: TObject);
procedure xpCheckBox31Click(Sender: TObject);
procedure xpPanel17TitleClick(Sender: TObject);
procedure xpCheckBox29Click(Sender: TObject);
procedure xpCheckBox32Click(Sender: TObject);
procedure xpCheckBox33Click(Sender: TObject);
procedure xppSampleAfterClose(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure ComboBox5Change(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure ComboBox6Change(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure CheckBox3Click(Sender: TObject);
procedure ComboBox7Change(Sender: TObject);
procedure CheckBox4Click(Sender: TObject);
procedure xpPageControl1Change(Sender: TObject);
procedure xpPageControl1DrawItem(Control: TWinControl; Index: Integer;
ACanvas: TControlCanvas; ARect: TRect; State: TOwnerDrawState);
procedure RadioButton2Click(Sender: TObject);
procedure RadioButton3Click(Sender: TObject);
procedure RadioButton4Click(Sender: TObject);
procedure RadioButton1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure xpCheckBox37Click(Sender: TObject);
procedure ComboBox8Change(Sender: TObject);
procedure xpCheckBox36Click(Sender: TObject);
procedure ComboBox9Change(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
const
cTabWidth : Integer = 110;
cTabHeight : Integer = 24;
implementation
{$R *.DFM}
procedure TForm1.xpButton1Click(Sender: TObject);
begin
xppPanel.Visible := (Sender = xpButton2);
xppControls.Visible := (Sender = xpButton3);
xppWindow.Visible := (Sender = xpButton1);
xppPages.Visible := (Sender = xpButton11);
end;
procedure TForm1.xpCheckBox1Click(Sender: TObject);
begin
if (Sender as TxpCheckBox).Checked then
xppSample.RoundedCorner := xppSample.RoundedCorner + [TRoundedCorner ((Sender as TxpCheckBox).Tag)]
else
xppSample.RoundedCorner := xppSample.RoundedCorner - [TRoundedCorner ((Sender as TxpCheckBox).Tag)];
end;
procedure TForm1.xpCheckBox5Click(Sender: TObject);
begin
xppSample.ShowBorder := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox6Click(Sender: TObject);
begin
xppSample.TitleShow := (Sender as TxpCheckBox).Checked;
xppSample.Repaint;
end;
procedure TForm1.xpCheckBox7Click(Sender: TObject);
begin
xppSample.TitleGradient := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox8Click(Sender: TObject);
begin
xppSample.GradientFill := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox9Click(Sender: TObject);
var
BG : TBitmap;
begin
if (Sender as TxpCheckBox).Checked then
begin
BG := TBitmap.Create;
try
ImageList1.GetBitmap (0, BG);
xppSample.BGImage.Assign (BG);
finally
BG.Free;
end;
end
else
xppSample.BGImage.ReleaseHandle;
xppSample.Repaint;
end;
procedure TForm1.xpCheckBox10Click(Sender: TObject);
var
BG : TBitmap;
begin
if (Sender as TxpCheckBox).Checked then
begin
BG := TBitmap.Create;
try
ImageList1.GetBitmap (1, BG);
xppSample.TitleImage.Assign (BG);
finally
BG.Free;
end;
end
else
xppSample.TitleImage.ReleaseHandle;
SendMessage (xppSample.Handle, WM_NCPAINT,0 ,0);
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
xppSample.GradientFill := true;
if xpCheckBox9.Checked then
begin
xpCheckBox9.Checked := False;
xpCheckBox9Click (xpCheckBox9);
end;
xppSample.FillDirection := TFillDirection (ComboBox1.ItemIndex);
if not xpCheckBox8.Checked then
begin
xpCheckBox8.Checked := True;
xpCheckBox8Click (xpCheckBox8);
end;
end;
procedure TForm1.ComboBox2Change(Sender: TObject);
begin
xppSample.TitleGradient := true;
if xpCheckBox10.Checked then
begin
xpCheckBox10.Checked := False;
xpCheckBox10Click (xpCheckBox10);
end;
if not xpCheckBox6.Checked then
begin
xpCheckBox6.Checked := true;
xpCheckBox6Click (xpCheckBox6);
end;
xppSample.TitleFillDirect := TFillDirection (ComboBox2.ItemIndex);
if not xpCheckBox7.Checked then
begin
xpCheckBox7.Checked := True;
xpCheckBox7Click (xpCheckBox7);
end;
//SendMessage (xppSample.Handle, WM_NCPAINT, 0, 0);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Screen.Cursors[10] := LoadCursor(0, MakeIntResource (32649));
ComboBox1.ItemIndex := 2;
ComboBox2.ItemIndex := 2;
ComboBox3.ItemIndex := 4;
ComboBox4.ItemIndex := 3;
xppControls.Align := alClient;
xppWindow.Align := alClient;
xppPanel.Align := alClient;
xppPages.Align := alClient;
xpPanel2.GradientFill := true;
ComboBox5.ItemIndex := 3;
ComboBox6.ItemIndex := 2;
ComboBox7.ItemIndex := 0;
ComboBox8.ItemIndex := 1;
ComboBox9.ItemIndex := 5;//Integer (xpComboBox1.XPStyle.SelGradientFillDir);
xpComboBox1.ItemIndex := 0;
end;
procedure TForm1.Label7Click(Sender: TObject);
begin
ShellExecute (Handle, 'open', 'http:\\www.rhoStyle.com', '', '', SW_SHOWNORMAL);
end;
procedure TForm1.Label8Click(Sender: TObject);
begin
ShellExecute (Handle, 'open', 'mailto:support@rhoStyle.com', '', '', SW_SHOWNORMAL);
end;
procedure TForm1.xpCheckBox11Click(Sender: TObject);
begin
xpWindow1.StickWindow.Active := (Sender as TxpCheckBox).Checked;
xpCheckBox12.Enabled := (Sender as TxpCheckBox).Checked;
xpCheckBox13.Enabled := (Sender as TxpCheckBox).Checked;
xpCheckBox14.Enabled := (Sender as TxpCheckBox).Checked;
xpCheckBox15.Enabled := (Sender as TxpCheckBox).Checked;
SpinEdit1.Enabled := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox15Click(Sender: TObject);
begin
if (Sender as TxpCheckBox).Checked then
xpWindow1.StickWindow.DockBorders := xpWindow1.StickWindow.DockBorders + [TDockBorder ((Sender as TxpCheckBox).Tag)]
else
xpWindow1.StickWindow.DockBorders := xpWindow1.StickWindow.DockBorders - [TDockBorder ((Sender as TxpCheckBox).Tag)];
end;
procedure TForm1.SpinEdit1Change(Sender: TObject);
begin
xpWindow1.StickWindow.StickAt := SpinEdit1.Value;
end;
procedure TForm1.xpCheckBox16Click(Sender: TObject);
begin
xpWindow1.xpCaption.Active := (Sender as TxpCheckBox).Checked;
xpCheckBox17.Enabled := (Sender as TxpCheckBox).Checked;
xpCheckBox18.Enabled := (Sender as TxpCheckBox).Checked;
xpCheckBox19.Enabled := (Sender as TxpCheckBox).Checked;
xpButton4.Enabled := (Sender as TxpCheckBox).Checked;
Label9.Enabled := (Sender as TxpCheckBox).Checked;
Label10.Enabled := (Sender as TxpCheckBox).Checked;
SpinEdit2.Enabled := (Sender as TxpCheckBox).Checked;
SpinEdit3.Enabled := (Sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox17Click(Sender: TObject);
begin
xpWindow1.xpCaption.DisplayAppIcon := (sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpCheckBox18Click(Sender: TObject);
begin
xpWindow1.xpCaption.RoundedCorners := (sender as TxpCheckBox).Checked;
end;
procedure TForm1.xpButton4Click(Sender: TObject);
begin
FontDialog1.Font.Assign (xpWindow1.xpCaption.Font);
if FontDialog1.Execute then
begin
xpWindow1.xpCaption.Font.Assign (FontDialog1.Font);
xpWindow1.ForceReDraw;
end;
end;
procedure TForm1.SpinEdit2Change(Sender: TObject);
begin
xpWindow1.xpCaption.Height := SpinEdit2.Value;
end;
procedure TForm1.SpinEdit3Change(Sender: TObject);
begin
xpWindow1.xpCaption.CustomButtonCount := SpinEdit3.Value;
end;
procedure TForm1.xpWindow1CustomButtonClick(Sender: TObject;
AButtonIndex: Integer);
begin
ShowMessageFmt ('Custom button %d clicked', [AButtonIndex]);
end;
procedure TForm1.xpWindow1CustomButtonDraw(Sender: TObject;
ACanvas: TCanvas; AButtonRect: TRect; AButtonIndex: Integer;
AState: TTitleButtonState);
const
cStr : array [1..8] of Char = ('x', 'p', 'S', 't', 'y', 'l', 'e', '~');
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -