📄 scrolltxtmain.pas
字号:
unit ScrollTxtMain;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ScrollText, ExtCtrls;
type
TForm1 = class(TForm)
ScrollText1: TScrollText;
rgpDirect: TRadioGroup;
rgpAlignment: TRadioGroup;
rgpLayout: TRadioGroup;
rgpSelectText: TRadioGroup;
procedure rgpDirectClick(Sender: TObject);
procedure rgpAlignmentClick(Sender: TObject);
procedure rgpLayoutClick(Sender: TObject);
procedure rgpSelectTextClick(Sender: TObject);
procedure ScrollText1DblClick(Sender: TObject);
procedure ScrollText1FrameScrolled(Direct: TScrollDirect;
CurPos: Integer; var Abort: Boolean);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
const sSingleTxt =
'自动字幕控件 - TScrollText 在指定位置显示滚动字幕 **********************';
const sMultiTxt =
' 自动字幕控件 - TScrollText'#13#10 +
'作者: 顾中军'#13#10 +
'版本: V1.02'#13#10 +
'功能: 在指定位置显示滚动字幕'#13#10 +
'用法:'#13#10 +
' 1、Active: 用于设置控件是否处于活动状态'#13#10 +
' 2、Interval: 用于设置字幕滚动周期(毫秒)'#13#10 +
' 3、ScrollText: 用于设置滚动字幕'#13#10 +
' 4、Step: 用于设置每次滚动像素点数'#13#10 +
' 5、ScrollDirect: 用于指示滚动方向'#13#10 +
' 6、其它属性及事件句柄的使用同TLabel控件'
;
procedure TForm1.FormCreate(Sender: TObject);
begin
Self.DoubleBuffered := True; //减少闪动
end;
procedure TForm1.rgpDirectClick(Sender: TObject);
begin
ScrollText1.ScrollDirection := TScrollDirect(rgpDirect.ItemIndex);
rgpAlignment.ItemIndex := Integer(ScrollText1.Alignment);
rgpLayout.ItemIndex := Integer(ScrollText1.Layout);
end;
procedure TForm1.rgpAlignmentClick(Sender: TObject);
begin
ScrollText1.Alignment := TAlignment(rgpAlignment.ItemIndex);
rgpAlignment.ItemIndex := Integer(ScrollText1.Alignment);
end;
procedure TForm1.rgpLayoutClick(Sender: TObject);
begin
ScrollText1.Layout := TTextLayout(rgpLayout.ItemIndex);
rgpLayout.ItemIndex := Integer(ScrollText1.Layout);
end;
procedure TForm1.rgpSelectTextClick(Sender: TObject);
begin
if rgpSelectText.ItemIndex = 0 then
ScrollText1.ScrollText := sSingleTxt
else
ScrollText1.ScrollText := sMultiTxt;
end;
procedure TForm1.ScrollText1DblClick(Sender: TObject);
begin
ScrollText1.Active := True;
end;
procedure TForm1.ScrollText1FrameScrolled(Direct: TScrollDirect;
CurPos: Integer; var Abort: Boolean);
begin
Abort := true;
ScrollText1.Reset;
ScrollText1.Active := True;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -