📄 fontdlg_frm.pas
字号:
unit fontdlg_frm;
interface
uses
Windows,
Messages,
SysUtils,
Classes,
Graphics,
Controls,
Forms,
Dialogs,
Buttons,
AxCtrls,
OleCtrls,
DbOleCtl,
FXLBL50GLib_TLB,
StdCtrls,
ExtCtrls,
lmdctrl,
ExtDlgs,
ComCtrls,
MainPlay,
lmdstdcA,
lmdgroup,
FXVID50GLib_TLB,
SwColor,
lmdcombo,
VrControls,
VrBlotter,
VrButtons,
VrLeds,
VrSlider,
VrUpDown,
MASFLCLib_TLB,
ImgList,
Menus,
lmdextcS,
VrLcd;
type
Tfontdlg = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet3: TTabSheet;
TabSheet4: TTabSheet;
TabSheet5: TTabSheet;
OpenAvi: TOpenDialog;
Label18: TLabel;
d_x: TLMDSpinEdit;
d_y: TLMDSpinEdit;
Label17: TLabel;
VrBlotter2: TVrBlotter;
VrBlotter3: TVrBlotter;
Label3: TLabel;
fontForeColor: TSwComboColor;
Label7: TLabel;
FontShadowColor: TSwComboColor;
Label25: TLabel;
FontOutLineColor: TSwComboColor;
Label26: TLabel;
FontLightColor: TSwComboColor;
Label27: TLabel;
FontWeightColor: TSwComboColor;
Label28: TLabel;
FontBackColor: TSwComboColor;
VrBlotter4: TVrBlotter;
Label5: TLabel;
LMDFontComboBox1: TLMDFontComboBox;
Label4: TLabel;
Label2: TLabel;
CheckBox1: TCheckBox;
CheckBox2: TCheckBox;
CheckBox3: TCheckBox;
FontSize: TVrNum;
VrUpDown1: TVrUpDown;
ShSize: TVrNum;
VrUpDown2: TVrUpDown;
VrBlotter5: TVrBlotter;
Label16: TLabel;
Label13: TLabel;
d_x1: TLMDSpinEdit;
d_y1: TLMDSpinEdit;
d_x2: TLMDSpinEdit;
Label15: TLabel;
Label14: TLabel;
d_y2: TLMDSpinEdit;
VrBlotter6: TVrBlotter;
Label20: TLabel;
Label23: TLabel;
Label21: TLabel;
Label22: TLabel;
Button5: TVrShadowButton;
VrBlotter7: TVrBlotter;
Label24: TLabel;
AviDelay: TLMDSpinEdit;
LoadAvi: TVrShadowButton;
Edit1: TMemo;
ImageList1: TImageList;
EffViewPopMenu: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
btnClsAear: TVrShadowButton;
FullScreen: TVrShadowButton;
btnPosApp: TVrShadowButton;
VrUserLed1: TVrUserLed;
VrUserLed2: TVrUserLed;
VrBlotter1: TVrBlotter;
Label10: TLabel;
Label19: TLabel;
Label11: TLabel;
Label8: TLabel;
label9: TEdit;
SpeedBtn: TLMDSpinEdit;
DelayBtn: TLMDSpinEdit;
StepBtn: TLMDSpinEdit;
FXImage2: TFXLabel;
EffectView: TTreeView;
VrSlider1: TVrSlider;
btnOK: TVrShadowButton;
btnTest: TVrShadowButton;
btnCancel: TVrShadowButton;
Label1: TLabel;
ComboBox1: TComboBox;
AviBak: TMasFLCPlayer;
GrpName: TLabel;
Photo1: TImage;
procedure Edit1Change(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure SpeedButton9Click(Sender: TObject);
procedure StepBtnChange(Sender: TObject);
procedure SpeedBtnChange(Sender: TObject);
procedure label9Change(Sender: TObject);
procedure Edit1Enter(Sender: TObject);
procedure redrawtext;
procedure btnClsAearClick(Sender: TObject);
procedure btnTestClick(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure fontForeColorChange(Sender: TObject);
procedure FontShadowColorChange(Sender: TObject);
procedure FontOutLineColorChange(Sender: TObject);
procedure FontLightColorChange(Sender: TObject);
procedure FontWeightColorChange(Sender: TObject);
procedure FontBackColorChange(Sender: TObject);
procedure LMDFontComboBox1Select(Sender: TObject);
procedure CheckBox3Click(Sender: TObject);
procedure VrSlider1Change(Sender: TObject);
procedure FontSizeChange(Sender: TObject);
procedure VrUpDown1DownClick(Sender: TObject);
procedure VrUpDown1UpClick(Sender: TObject);
procedure VrUpDown2DownClick(Sender: TObject);
procedure VrUpDown2UpClick(Sender: TObject);
procedure ShSizeChange(Sender: TObject);
procedure Button5Click(Sender: TObject);
procedure LoadAviClick(Sender: TObject);
procedure btnOKClick(Sender: TObject);
procedure btnCancelClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure EffectViewClick(Sender: TObject);
procedure EffectViewGetImageIndex(Sender: TObject; Node: TTreeNode);
procedure EffectViewGetSelectedIndex(Sender: TObject; Node: TTreeNode);
procedure FormActivate(Sender: TObject);
procedure btnPosAppClick(Sender: TObject);
procedure FullScreenClick(Sender: TObject);
procedure VrUserLed1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormShow(Sender: TObject);
procedure ComboBox1Change(Sender: TObject);
private
{ Private declarations }
procedure SimEffect();
procedure WriteGrid_Text();
procedure WriteGrid_Grp();
procedure WriteGrid_Avi();
procedure WriteGrid_Cls();
procedure PositionEqu();
public
{ Public declarations }
end;
var
fontdlg: Tfontdlg;
filenameflag: integer;
implementation
uses playdlg_frm;
{$R *.DFM}
procedure tfontdlg.redrawtext();
begin
playdlg.edittext.Paint;
d_y1.value := playdlg.edittext.top;
d_x1.value := playdlg.edittext.left;
d_x2.value := playdlg.edittext.width;
d_y2.value := playdlg.edittext.height;
end;
procedure Tfontdlg.Edit1Change(Sender: TObject);
begin
playdlg.edittext.caption := edit1.text;
end;
procedure Tfontdlg.CheckBox1Click(Sender: TObject);
begin
playdlg.EditText.FontItalic := checkbox2.Checked;
playdlg.EditText.FontBold := checkbox1.Checked;
end;
procedure Tfontdlg.SpeedButton9Click(Sender: TObject);
begin
playdlg.EditText.Font3D := 8;
end;
procedure Tfontdlg.StepBtnChange(Sender: TObject);
begin
playdlg.EditText.MGrain := stepbtn.Value;
FXImage2.MGrain := stepbtn.Value;
SimEffect;
end;
procedure Tfontdlg.SpeedBtnChange(Sender: TObject);
begin
playdlg.EditText.MDelay := speedbtn.Value;
FXImage2.MDelay := SpeedBtn.Value;
SimEffect;
end;
procedure Tfontdlg.label9Change(Sender: TObject);
begin
playdlg.EditText.MEffect := strtoint(label9.text);
FXImage2.MEffect := playdlg.EditText.MEffect;
SimEffect;
end;
procedure Tfontdlg.Edit1Enter(Sender: TObject);
begin
playdlg.edittext.caption := edit1.text;
redrawtext();
end;
procedure Tfontdlg.btnClsAearClick(Sender: TObject);
begin
playdlg.BringToFront;
playdlg.edittext.autosize := false;
CheckBox3.Checked := False;
clsflag := 1;
end;
procedure Tfontdlg.btnTestClick(Sender: TObject);
begin
if btnTest.Caption = '测试' then
if (edit1.text <> '') or (OpenAvi.FileName <> '') or (CommandID = 3) then
begin
btnTest.Caption := '停止';
FXImage2.AbortEffect;
with Playdlg.EditText do
begin
Visible := false;
SetEffect(strtoint(label9.text), speedbtn.Value, stepbtn.Value);
FXEnabled := True;
Visible := true;
update := true;
end;
end
else
begin
Application.MessageBox('测试内容为空,不能测试', '错误信息', MB_OK +
MB_DEFBUTTON1);
exit;
end
else
begin
btnTest.Caption := '测试';
playdlg.EditText.AbortEffect;
playdlg.EditText.FXEnabled := false
end;
end;
procedure Tfontdlg.FormClose(Sender: TObject; var Action: TCloseAction);
begin
filenameflag := 0;
edit1.text := '';
Openavi.FileName := '';
MainForm.textcommand.Checked := false;
MainForm.clscommand.Checked := false;
MainForm.flccommand.Checked := false;
MainForm.grpcommand.Checked := false;
end;
procedure Tfontdlg.FormCreate(Sender: TObject);
var
numParents, i: Integer;
begin
with FontForeColor do
begin
AddColor('clBlack', clBlack);
AddColor('clNavy', clNavy);
AddColor('clGreen', clGreen);
AddColor('clTeal', clTeal);
AddColor('clMaroon', clMaroon);
AddColor('clPurple', clPurple);
AddColor('clOlive', clOlive);
AddColor('clSilver', clSilver);
AddColor('clGray', clGray);
AddColor('clBlue', clBlue);
AddColor('clLime', clLime);
AddColor('clAqua', clAqua);
AddColor('clRed', clRed);
AddColor('clFuchsia', clFuchsia);
AddColor('clYellow', clYellow);
AddColor('clWhite', clWhite);
AddColor('clWhite', clWhite);
SelectedColor := rgb(255, 0, 0);
end;
FontShadowColor.Items.Assign(fontForeColor.Items);
FontShadowColor.SelectedColor := rgb(255, 255, 255);
FontOutLineColor.Items.Assign(fontForeColor.Items);
FontOutLineColor.SelectedColor := rgb(255, 255, 0);
FontLightColor.Items.Assign(fontForeColor.Items);
FontLightColor.SelectedColor := rgb(255, 0, 255);
FontWeightColor.Items.Assign(fontForeColor.Items);
FontWeightColor.SelectedColor := rgb(0, 0, 255);
FontBackColor.Items.Assign(fontForeColor.Items);
FontBackColor.SelectedColor := rgb(0, 0, 0);
LmdFontComBoBox1.SelectedFont := 'System';
filenameflag := 0;
numParents := 0;
with EffectView do
for i := 0 to Items.Count - 1 do
with Items[i] do
if HasChildren then
numParents := numParents + 1
else
Data := Pointer(i - numParents);
end;
procedure Tfontdlg.fontForeColorChange(Sender: TObject);
begin
playdlg.EditText.ForeColor := fontForeColor.SelectedColor;
end;
procedure Tfontdlg.FontShadowColorChange(Sender: TObject);
begin
playdlg.EditText.FontShadowColor := fontShadowColor.SelectedColor;
end;
procedure Tfontdlg.FontOutLineColorChange(Sender: TObject);
begin
playdlg.EditText.FontOutlineColor := fontOutLineColor.SelectedColor;
end;
procedure Tfontdlg.FontLightColorChange(Sender: TObject);
begin
playdlg.EditText.Font3DColor1 := fontLightColor.SelectedColor;
end;
procedure Tfontdlg.FontWeightColorChange(Sender: TObject);
begin
playdlg.EditText.Font3DColor2 := fontWeightColor.SelectedColor;
end;
procedure Tfontdlg.FontBackColorChange(Sender: TObject);
begin
playdlg.EditText.BackColor := fontBackColor.SelectedColor;
end;
procedure Tfontdlg.LMDFontComboBox1Select(Sender: TObject);
begin
PlayDlg.EditText.FontName := lmdfontcombobox1.SelectedFont;
end;
procedure Tfontdlg.CheckBox3Click(Sender: TObject);
begin
if checkbox3.Checked then
playdlg.edittext.autosize := True
else
playdlg.edittext.autosize := false;
end;
procedure Tfontdlg.VrSlider1Change(Sender: TObject);
begin
playdlg.EditText.Font3D := VrSlider1.Position;
end;
procedure Tfontdlg.FontSizeChange(Sender: TObject);
begin
PlayDlg.EditText.FontSize := FontSize.value;
end;
procedure Tfontdlg.VrUpDown1DownClick(Sender: TObject);
begin
FontSize.Value := FontSize.Value + 1;
end;
procedure Tfontdlg.VrUpDown1UpClick(Sender: TObject);
begin
FontSize.Value := FontSize.Value - 1;
end;
procedure Tfontdlg.VrUpDown2DownClick(Sender: TObject);
begin
ShSize.Value := ShSize.Value - 1;
end;
procedure Tfontdlg.VrUpDown2UpClick(Sender: TObject);
begin
ShSize.Value := ShSize.Value + 1;
end;
procedure Tfontdlg.ShSizeChange(Sender: TObject);
begin
playdlg.EditText.FontBlockSize := ShSize.Value;
end;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -