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

📄 teeedifont.pas

📁 第三方控件:PaintGrid.pas 网格型仪表控件源文件 Mymeter.pas 圆型仪表控件源文件 Project1是这两个控件的使用范例。 该
💻 PAS
字号:
{**********************************************}
{  TTeeFont (or derived) Editor Dialog         }
{  Copyright (c) 1999-2005 by David Berneda    }
{**********************************************}
unit TeeEdiFont;
{$I TeeDefs.inc}

interface

uses {$IFNDEF LINUX}
     Windows, Messages,
     {$ENDIF}
     SysUtils, Classes,
     {$IFDEF CLX}
     QGraphics, QControls, QForms, QDialogs, QStdCtrls, QComCtrls, QExtCtrls,
     {$ELSE}
     Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls, ExtCtrls,
     {$ENDIF}
     {$IFDEF LCL}
     Buttons,
     {$ENDIF}
     TeeProcs, TeCanvas, TeePenDlg, TeeEdiGrad;

type
  TTeeFontEditor = class(TForm)
    Button3: TButton;
    SHText: TShape;
    Label2: TLabel;
    Edit2: TEdit;
    UDInter: TUpDown;
    BOutline: TButtonPen;
    BShadow: TButton;
    CBOutGrad: TCheckBox;
    BGradient: TButtonGradient;
    procedure BFontClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure SHTextMouseUp(Sender: TObject; Button: TMouseButton;
      Shift: TShiftState; X, Y: Integer);
    procedure Edit2Change(Sender: TObject);
    procedure BShadowClick(Sender: TObject);
    procedure CBOutGradClick(Sender: TObject);
  private
    { Private declarations }
    TheFont : TTeeFont;
  public
    { Public declarations }
    procedure RefreshControls(AFont:TTeeFont);
  end;

Function InsertTeeFontEditor(ATab:TTabSheet):TTeeFontEditor;
Procedure EditTeeFontEx(AOwner:TComponent; AFont:TTeeFont);

implementation

{$IFNDEF CLX}
{$IFNDEF LCL}
{$R *.DFM}
{$ENDIF}
{$ELSE}
{$R *.xfm}
{$ENDIF}

uses
  TeeConst, TeeShadowEditor, TeeBrushDlg;

Function InsertTeeFontEditor(ATab:TTabSheet):TTeeFontEditor;
begin
  result:=TTeeFontEditor.Create(ATab.Owner);
  AddFormTo(result,ATab);
end;

Procedure EditTeeFontEx(AOwner:TComponent; AFont:TTeeFont);
begin
  with TTeeFontEditor.Create(AOwner) do
  try
    BorderStyle:=TeeBorderStyle;
    TheFont:=AFont;
    ShowModal;
  finally
    Free;
  end;
end;

procedure TTeeFontEditor.BFontClick(Sender: TObject);
begin
  EditTeeFont(Self,TheFont);
  SHText.Brush.Color:=TheFont.Color;
end;

procedure TTeeFontEditor.RefreshControls(AFont:TTeeFont);
begin
  TheFont:=AFont;
  With TheFont do
  begin
    SHText.Brush.Color:=Color;
    UDInter.Position:=InterCharSize;
    BOutline.LinkPen(OutLine);
    CBOutGrad.Checked:=Gradient.Outline;
    BGradient.Gradient:=Gradient;
  end;
end;

procedure TTeeFontEditor.FormShow(Sender: TObject);
begin
  if Assigned(TheFont) then RefreshControls(TheFont);

  {$IFDEF CLX}
  EnableControls(False,[Label2,Edit2,UDInter,BOutline]);
  {$ENDIF}

  TeeTranslateControl(Self);
end;

procedure TTeeFontEditor.SHTextMouseUp(Sender: TObject;
  Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
var tmp : TColor;
begin
  tmp:=TheFont.Color;

  if EditColorDialog(Self,tmp) then
  begin
    TheFont.Color:=tmp;
    SHText.Brush.Color:=tmp;
  end;
end;

procedure TTeeFontEditor.Edit2Change(Sender: TObject);
begin
  if Showing then TheFont.InterCharSize:=UDInter.Position;
end;

procedure TTeeFontEditor.BShadowClick(Sender: TObject);
begin
  EditTeeShadow(Owner,TheFont.Shadow);
end;

procedure TTeeFontEditor.CBOutGradClick(Sender: TObject);
begin
  TheFont.Gradient.Outline:=CBOutGrad.Checked;
end;

end.

⌨️ 快捷键说明

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