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

📄 mainunit.pas

📁 MPEG-II播放动态链接库的使用样例
💻 PAS
字号:
unit MainUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Mpg2Dec_h, StdCtrls, ExtCtrls, Menus, ComCtrls, ToolWin;

type
  TForm1 = class(TForm)
    OpenDialog1: TOpenDialog;
    MainMenu1: TMainMenu;
    FileF1: TMenuItem;
    OpenFileO1: TMenuItem;
    Help1: TMenuItem;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    TrackBar1: TTrackBar;
    Pause1: TMenuItem;
    Stop1: TMenuItem;
    Exit1: TMenuItem;
    Play1: TMenuItem;
    TrackBar2: TTrackBar;
    SaveBMP1: TMenuItem;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    procedure OpenFileO1Click(Sender: TObject);
    procedure Pause1Click(Sender: TObject);
    procedure Stop1Click(Sender: TObject);
    procedure Play1Click(Sender: TObject);
    procedure FormPaint(Sender: TObject);
    procedure FormResize(Sender: TObject);
    procedure TrackBar1Change(Sender: TObject);
    procedure TrackBar2Change(Sender: TObject);
    procedure SaveBMP1Click(Sender: TObject);
    procedure ToolButton1Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure ToolButton2Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.OpenFileO1Click(Sender: TObject);
begin
  if OpenDialog1.Execute then
  begin
    InitMpg2Dec(Handle);
    OpenMpg2File(PChar(OpenDialog1.FileName));
    SetTrackHandle(TrackBar1.Handle);
  end;
end;

procedure TForm1.Pause1Click(Sender: TObject);
var
  i: Integer;
begin
  i := Pause;
  if i = 1 then
    Pause1.Checked := True
  else
    Pause1.Checked := False;
end;

procedure TForm1.Stop1Click(Sender: TObject);
begin
  Stop;
end;

procedure TForm1.Play1Click(Sender: TObject);
begin
  Play;
end;

procedure TForm1.FormPaint(Sender: TObject);
begin
  On_Paint;
end;

procedure TForm1.FormResize(Sender: TObject);
begin
  On_Resize;
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
  SetFramePos(TrackBar1.Position);
end;

procedure TForm1.TrackBar2Change(Sender: TObject);
begin
  SetLumGain(TrackBar2.Position);
  EnableLumFilter(1);
end;

procedure TForm1.SaveBMP1Click(Sender: TObject);
begin
  OpenDialog1.FileName := '';
  if not Pause1.Checked then
    Pause;
  if OpenDialog1.Execute then
    SaveBMP(PChar(OpenDialog1.FileName));
  if not Pause1.Checked then
    Pause;
end;

procedure TForm1.ToolButton1Click(Sender: TObject);
begin
  SetStart;
end;

procedure TForm1.ToolButton4Click(Sender: TObject);
begin
  SetEnd;
end;

procedure TForm1.ToolButton2Click(Sender: TObject);
begin
  PriorFrame;
end;

procedure TForm1.ToolButton3Click(Sender: TObject);
begin
  NextFrame;
end;

end.

⌨️ 快捷键说明

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