📄 flash.pas
字号:
n22.Checked:=true;
trackbar1.Visible:=true;
frmflash.Height:= frmflash.Height-21;
end
else
begin
n22.ImageIndex:=-1;
trackbar1.Visible:=false;
n22.Checked:=false;
frmflash.Height:=frmflash.Height+21;
end;
end;
procedure TFrmflash.N12Click(Sender: TObject);
begin
timer1.Enabled:=true;
statusbar1.Panels[0].Text:='状态:正在播放....';
shockwaveflash1.Play;
end;
procedure TFrmflash.N13Click(Sender: TObject);
begin
statusbar1.Panels[0].Text:='状态:播放暂停....';
shockwaveflash1.StopPlay;
shockwaveflash1.Stop;
timer1.Enabled:=false;
end;
procedure TFrmflash.N18Click(Sender: TObject);
begin
if k-1>=0 then
begin
k:=k-1;
if names[k]<>'' then
shockwaveflash1.Movie:=names[k]
else
exit;
trackbar1.Max:=shockwaveflash1.TotalFrames;
shockwaveflash1.Play;
end
else
exit;
end;
procedure TFrmflash.N19Click(Sender: TObject);
begin
if k+1<h then
begin
k:=k+1;
if names[k]<>'' then
shockwaveflash1.Movie:=names[k]
else
exit;
trackbar1.Max:=shockwaveflash1.TotalFrames;
shockwaveflash1.Play;
end
else
exit;
end;
procedure TFrmflash.N20Click(Sender: TObject);
var f:string;
g:integer;
begin
f:=inputbox('跳转','跳转到帧:','');
if (f<>'') then
try
begin
g:=strtoint(f);
if (g>shockwaveflash1.TotalFrames) then
showmessage('您输入的数字超过此Flash文件最大帧数')
else
begin
frmflash.ShockwaveFlash1.GotoFrame(g);
shockwaveflash1.Play;
end;
end;
except
showmessage('对不起,只能输入数字');
exit;
end;
end;
procedure TFrmflash.N24Click(Sender: TObject);
var xx:string;
yy:string;
begin
if n24.Checked=false then
begin
if shockwaveflash1.movie<>'' then
begin
xx:=inputbox('开始','请输入开始帧数:','');
if xx<>'' then
try
begin
x1:=strtoint(xx);
if x1>shockwaveflash1.TotalFrames then
showmessage('您输入的数字超过此Flash文件最大帧数!')
else
begin
yy:=inputbox('结束','请输入结束帧数:','');
if yy<>'' then
try
begin
y1:=strtoint(yy);
if y1> shockwaveflash1.TotalFrames then
showmessage('您输入的数字超过此Flash文件最大帧数')
else
begin
showmessage('恭喜您,创建成功!');
timer2.Enabled:=true;
n24.Checked:=true;
n24.ImageIndex:=0;
n41.Checked:=true;
n41.ImageIndex:=0;
shockwaveflash1.Stop;
shockwaveflash1.GotoFrame(x1);
shockwaveflash1.Play;
statusbar1.Panels[0].Text:='制定播放:从'+xx+'-'+yy+'帧';
end;
end;
except
showmessage('对不起,只能输入数字!');
exit;
end;
end;
end;
except
showmessage('对不起,只能输入数字!');
exit;
end;
end
else
showmessage('对不起,目前没有影片供制定,请先打开文件!');
end
else
begin
n24.Checked:=false;
n24.ImageIndex:=-1;
n41.Checked:=false;
n41.ImageIndex:=-1;
x1:=-1;
y1:=-1;
timer2.Enabled:=false;
statusbar1.Panels[0].Text:='状态:正在播放....';
end;
end;
procedure TFrmflash.N32Click(Sender: TObject);
var
bmp1: tbitmap;
bmp1canvas: tcanvas;
dc: hdc;
begin
sleep(300);
bmp1 := tbitmap.Create;
bmp1.height := frmflash.shockwaveflash1.height;
bmp1.width := frmflash.shockwaveflash1.width;
dc := getdc(frmflash.shockwaveflash1.Handle);
bmp1canvas := tcanvas.create;
bmp1canvas.handle := dc;
bmp1.Canvas.copyrect(rect(0, 0, bmp1.width, bmp1.height), bmp1canvas, rect(0,0, frmflash.shockwaveflash1.Width, frmflash.shockwaveflash1.Height));
if savedialog1.Execute then
begin
bmp1.SaveToFile(savedialog1.FileName);
bmp1.Free;
end;
end;
procedure TFrmflash.Flash1Click(Sender: TObject);
var
abc:string;
abd:string;
begin
myreg:=Tregistry.Create;
if a=false then
begin
try
with myreg do
begin
abd:=extractfilepath(paramstr(0))+'FlashPlayer.exe,1';
abc:=extractfilepath(paramstr(0))+'FlashPlayer.exe %1';
myreg.RootKey:=HKEY_CLASSES_ROOT;
if Openkey('\.swf\shell\open\command',true) then
begin
writestring('',abc);
myreg.CloseKey;
end;
if openkey('\.swf\shell\open',true) then
begin
writestring('','用FlashPlayer播放');
myreg.CloseKey;
end;
if openkey('\.swf\DefaultIcon',true) then
begin
writestring('',abd);
myreg.Free;
showmessage('**** 关联文件完毕! ****');
flash1.Checked:=true;
flash2.Checked:=true;
a:=true;
end;
end;
except
showmessage('对不起,关联失败了 :(');
end;
end
else
begin
try
with myreg do
begin
myreg.RootKey:=HKEY_CLASSES_ROOT;
myreg.DeleteKey('.swf');
myreg.Free;
showmessage('**** 取消文件关联完毕! ****');
flash1.Checked:=false;
flash2.Checked:=false;
a:=false;
end;
except
showmessage('对不起,关联失败了 :(');
end;
end;
end;
procedure TFrmflash.Timer1Timer(Sender: TObject);
begin
statusbar1.Panels[2].Text:='当前帧数:'+inttostr(shockwaveflash1.FrameNum);
if skipframe=trackBar1.Position then//没有拖动还是原来的值,则移动TrackBar1.Position
begin
trackbar1.Position:=shockwaveflash1.CurrentFrame;
skipframe:=trackbar1.Position;
end
else //手动调整TrackBar1.Position
begin
shockwaveflash1.GotoFrame(trackbar1.Position);
skipframe:=trackbar1.Position;
shockwaveflash1.Play;
end;
end;
procedure TFrmflash.Timer2Timer(Sender: TObject);
begin
if shockwaveflash1.CurrentFrame>=y1 then
begin
shockwaveflash1.Stop;
shockwaveflash1.GotoFrame(x1);
shockwaveflash1.Play;
end;
end;
procedure TFrmflash.N14Click(Sender: TObject);
begin
ShellExecute(handle,nil,pchar('http://jiangsm2008.yeah.net'),nil,nil,SW_SHOWNORMAL);
end;
procedure TFrmflash.N15Click(Sender: TObject);
begin
ShellExecute(handle,nil,pchar('mailto:jiangzhiyong8866@163.com?subject=你好,希望能认识你!'),nil,nil,SW_SHOWNORMAL);
end;
procedure TFrmflash.N59Click(Sender: TObject);
var j :integer;
begin
if opendialog1.Execute then
begin
for j:=0 to opendialog1.Files.Count-1 do
begin
x:=listview1.Items.Add;
names[h+j]:=opendialog1.files[j];
x.Caption:=ExtractFilename(names[j+h]);
end;
h:=h+opendialog1.Files.Count;
end ;
if h=opendialog1.Files.Count then
begin
timer1.Enabled:=true;
shockwaveflash1.Movie:=names[0];
end;
end;
procedure TFrmflash.N61Click(Sender: TObject);
var f:integer;
begin
if listview1.Selected<>nil then
begin
k:=listview1.Selected.Index;
if shockwaveflash1.Movie=names[k] then
begin
shockwaveflash1.Movie:='fengjun.swf';
names[k]:='';
end;
listview1.Items.Delete(k);
for f:=k to h do
names[f]:= names[f+1];
h:=h-1;
end;
end;
procedure TFrmflash.N63Click(Sender: TObject);
var ss:string;
mm:string;
begin
if (listview1.Selected<>nil)and(listview1.Selected.Index<>0) then
begin
k:=listview1.Selected.Index;
ss:=names[k-1];
mm:=listview1.Items[k].Caption;
listview1.Items[k].Caption:=listview1.Items[k-1].Caption;
listview1.Items[k-1].Caption:=mm;
names[k-1]:=names[k];
names[k]:=ss;
end
else exit;
end;
procedure TFrmflash.N65Click(Sender: TObject);
var ss:string;
mm:string;
begin
if (listview1.Selected<>nil)and(listview1.Selected.Index<>h-1) then
begin
k:=listview1.Selected.Index;
ss:=names[k+1];
mm:=listview1.Items[k].Caption;
listview1.Items[k].Caption:=listview1.Items[k+1].Caption;
listview1.Items[k+1].Caption:=mm;
names[k+1]:=names[k];
names[k]:=ss;
end
else exit;
end;
procedure TFrmflash.N67Click(Sender: TObject);
var l:integer;
begin
listview1.Clear;
shockwaveflash1.Stop;
shockwaveflash1.Movie:='jiang.swf';
for l:=0 to h-1 do
names[l]:='';
h:=0;
end;
procedure TFrmflash.N43Click(Sender: TObject);
begin
n2.Click;
end;
procedure TFrmflash.URL2Click(Sender: TObject);
begin
Url1.Click;
end;
procedure TFrmflash.N111Click(Sender: TObject);
begin
n12.Click;
end;
procedure TFrmflash.N210Click(Sender: TObject);
begin
n13.Click;
end;
procedure TFrmflash.N33Click(Sender: TObject);
begin
n20.Click;
end;
procedure TFrmflash.N41Click(Sender: TObject);
begin
if n41.checked=false then
begin
n41.Checked:=true;
n41.ImageIndex:=0;
end
else
begin
n41.Checked:=false;
n41.ImageIndex:=-1;
end;
n24.Click;
end;
procedure TFrmflash.N38Click(Sender: TObject);
begin
n9.Click;
end;
procedure TFrmflash.N39Click(Sender: TObject);
begin
n10.Click;
end;
procedure TFrmflash.N40Click(Sender: TObject);
begin
if n40.Checked=false then
n40.Checked:=true
else
n40.Checked:=false;
n28.Click;
end;
procedure TFrmflash.N49Click(Sender: TObject);
begin
n25.Click;
n49.ImageIndex:=0;
n50.ImageIndex:=-1;
end;
procedure TFrmflash.N50Click(Sender: TObject);
begin
n27.Click;
n49.ImageIndex:=-1;
n50.ImageIndex:=0;
end;
procedure TFrmflash.N52Click(Sender: TObject);
begin
n36.Click;
n52.ImageIndex:=0;
n1001.ImageIndex:=-1;
end;
procedure TFrmflash.N48Click(Sender: TObject);
begin
if n48.Checked=false then
begin
n48.ImageIndex:=0;
n48.Checked:=true;
end
else
begin
n48.ImageIndex:=-1;
n48.Checked:=false;
end;
n45.Click;
end;
procedure TFrmflash.Flash2Click(Sender: TObject);
begin
if flash2.Checked=false then
begin
flash2.ImageIndex:=5;
flash2.Checked:=true;
end
else
begin
flash2.ImageIndex:=-1;
flash2.Checked:=false;
end;
flash1.Click;
end;
procedure TFrmflash.N55Click(Sender: TObject);
begin
n3.Click;
end;
procedure TFrmflash.N56Click(Sender: TObject);
begin
n4.Click;
end;
procedure TFrmflash.N1002Click(Sender: TObject);
begin
n1001.Click;
n52.ImageIndex:=-1;
n1002.ImageIndex:=0;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -