📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ComCtrls, OleCtrls, ShockwaveFlashObjects_TLB,
Menus, ExtCtrls, RXCtrls, Buttons;
Type
TForm1 = class(TForm)
OpenDialog1: TOpenDialog;
TrackBar1: TTrackBar;
Panel1: TPanel;
SecretPanel1: TSecretPanel;
Timer1: TTimer;
N1: TMenuItem;
N2: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N3: TMenuItem;
P1: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
F1: TMenuItem;
N20: TMenuItem;
N6: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
A1: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
MainMenu1: TMainMenu;
Flash1: TShockwaveFlash;
procedure TrackBar1Change(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N4Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N13Click(Sender: TObject);
procedure N16Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure N19Click(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure A1Click(Sender: TObject);
procedure F1Click(Sender: TObject);
procedure N20Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormResize(Sender: TObject);
private
{ Private declarations }
public
i,o:integer;
s:string;
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses shellapi;
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
try
n4.enabled:=false;
f1.enabled:=false;
n13.enabled:=false;
n14.enabled:=false;
n16.enabled:=false;
n20.enabled:=false;
trackbar1.Enabled :=false;
timer1.enabled:=false;
panel1.caption:=' 状态:没有文件播放 '+'共有'+inttostr(i)+'帧';
except
showmessage('对不起,您的系统没有Flash组件支持,请在添加/删除程序中安装或重装系统!');
exit
end;
end;
procedure TForm1.TrackBar1Change(Sender: TObject);
begin
if flash1.playing=false then
flash1.FrameNum:=trackbar1.position;
end;
procedure TForm1.N2Click(Sender: TObject);
begin
if opendialog1.execute then
try
flash1.Movie :=opendialog1.FileName ;
i:=flash1.totalframes;
s:=' 状态:正在播放... '+'共有'+inttostr(i)+'帧';
trackbar1.Max :=i;//flash1.TotalFrames;
trackbar1.Enabled :=true;
timer1.enabled:=true;
secretpanel1.Visible :=false;
n4.enabled:=true;
n13.enabled:=true;
n14.enabled:=true;
n16.enabled:=true;
n20.enabled:=true;
f1.enabled:=true;
panel1.caption:=s;
flash1.Play ;
except
messagedlg(#13+'不能打开您所选择的文件格式!',mtwarning,[mbok],0);
exit;
end;
end;
procedure TForm1.N4Click(Sender: TObject);
begin
secretpanel1.Visible :=true;
trackbar1.Enabled :=false;
trackbar1.Position :=0;
timer1.enabled:=false;
Flash1.stop;
flash1.Movie :='1.swf';
n13.enabled:=false;
n14.enabled:=false;
n16.enabled:=false;
n20.enabled:=false;
f1.enabled:=false;
n4.enabled:=false;
panel1.caption:=' 状态:没有文件播放 '+'共有0帧';
form1.height:=324;
form1.Width :=328;
end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
o:=flash1.FrameNum;
trackbar1.position:=o;
panel1.caption:=' 状态:正在播放... '+inttostr(o)+'/'+inttostr(i)+'帧';
end;
procedure TForm1.N14Click(Sender: TObject);
begin
flash1.StopPlay ;
flash1.Stop ;
timer1.Enabled :=false;
panel1.caption:=' 状态:播放暂停 '+inttostr(o)+'/'+inttostr(i)+'帧';
end;
procedure TForm1.N13Click(Sender: TObject);
begin
flash1.Play;
timer1.Enabled :=true;
end;
procedure TForm1.N16Click(Sender: TObject);
var z:string;
begin
z:=inputbox('帧数','请选择指定帧:','');
if Flash1.playing then
begin
try
flash1.GotoFrame(strtoint(z));
flash1.Play;
except
messagedlg(#13+'跳转错误!只能输入数字!',mtwarning,[mbok],0);
exit;
end;
end;
end;
procedure TForm1.N18Click(Sender: TObject);
begin
ShellExecute(handle,nil,pchar('http://kelphi.51.net'),nil,nil,SW_SHOWNORMAL);
end;
procedure TForm1.N19Click(Sender: TObject);
begin
ShellExecute(handle,nil,pchar('mailto:ezym@163.net?subject=赵永明你好,希望能认识你!'),nil,nil,SW_SHOWNORMAL);
end;
procedure TForm1.N3Click(Sender: TObject);
begin
close;
end;
procedure TForm1.A1Click(Sender: TObject);
begin
Messagedlg(#13+' 你好!我是山东临沂的软件程序员!'+#13#13+
'您能使用我的软件我感到很高兴,也希望'+#13#13+
'我们可以交个朋友!'+#13#13+
' 我主要擅长做数据库软件,如果您需'+#13#13+
'要这方面的软件的话可以和我联系!'+#13#13+
' 这个播放器是我费了一晚上的时间做'+#13#13+
'出来的,其实也没有什么技术性的东西,'+#13#13+
'做得不好,大家凑和着用吧!'+#13#13+
'作者:赵永明 主页:http://kelphi.51.net', mtinformation,[mbok],0);
end;
procedure TForm1.F1Click(Sender: TObject);
begin
form1.windowstate:=wsmaximized;
flash1.Align :=alclient;
trackbar1.SetFocus ;
flash1.SetFocus ;
end;
procedure TForm1.N20Click(Sender: TObject);
begin
form1.windowstate:=wsnormal;
form1.height:=324;
form1.Width :=328;
flash1.Align :=alclient;
trackbar1.SetFocus ;
flash1.SetFocus ;
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
timer1.enabled:=false;
Flash1.stop;
Application.terminate;
end;
procedure TForm1.FormResize(Sender: TObject); //这一段是后来加的,不知为什么如果不让另一个控件获得焦点的话,它就不能自动缩放到窗体大小
begin
if flash1.playing=true then
begin
panel1.SetFocus ;
flash1.SetFocus ;
end
else
begin
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -