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

📄 info.pas

📁 一个非常好用的MP3音乐播放控件
💻 PAS
字号:
unit Info;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, XaudioPlayer;

type
  TInfoForm = class(TForm)
    InputGroup: TGroupBox;
    OutputGroup: TGroupBox;
    InputNameLabel: TLabel;
    InputModuleLabel: TLabel;
    InputNameText: TStaticText;
    InputModuleText: TStaticText;
    DllInfoBox: TGroupBox;
    LibraryVersionLabel: TLabel;
    ImplementationVersionText: TStaticText;
    RefreshButton: TButton;
    OutputNameLabel: TLabel;
    OutputModuleLabel: TLabel;
    OutputNameText: TStaticText;
    OutputModuleText: TStaticText;
    ListOutputsButton: TButton;
    ListInputModulesButton: TButton;
    ApiVersionText: TStaticText;
    Label1: TLabel;
    ListCodecsButton: TButton;
    procedure FormCreate(Sender: TObject);
    procedure RefreshButtonClick(Sender: TObject);
    procedure ListInputModulesButtonClick(Sender: TObject);
    procedure ListOutputModulesButtonClick(Sender: TObject);
    procedure ListCodecModulesButtonClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  InfoForm: TInfoForm;

implementation

uses Player, Modules;

{$R *.DFM}

procedure TInfoForm.FormCreate(Sender: TObject);
var
  Major:    Cardinal;
  Minor:    Cardinal;
  Revision: Cardinal;
  Version:  Cardinal;
begin
  Version  := PlayerForm.XaudioPlayer.GetVersion(XA_VERSION_ID_IMPLEMENTATION);
  Major    := (Version shr 16) and $FF;
  Minor    := (Version shr 8) and $FF;
  Revision := (Version) and $FF;
  ImplementationVersionText.Caption := Format('%d.%d.%d', [Major, Minor, Revision]);
  Version  := PlayerForm.XaudioPlayer.GetVersion(XA_VERSION_ID_ASYNC_API);
  Major    := (Version shr 16) and $FF;
  Minor    := (Version shr 8) and $FF;
  Revision := (Version) and $FF;
  APIVersionText.Caption := Format('%d.%d.%d', [Major, Minor, Revision]);
end;

procedure TInfoForm.RefreshButtonClick(Sender: TObject);
begin
  PlayerForm.XaudioPlayer.GetInputModule;
  PlayerForm.XaudioPlayer.GetOutputModule;
end;

procedure TInfoForm.ListInputModulesButtonClick(Sender: TObject);
begin
  ModulesForm.TreeView.Items.Clear;
  ModulesForm.TreeView.Items.AddChild(ModulesForm.TreeView.Items.GetFirstNode, 'Input Modules');
  PlayerForm.XaudioPlayer.InputModulesList;
end;

procedure TInfoForm.ListOutputModulesButtonClick(Sender: TObject);
begin
  ModulesForm.TreeView.Items.Clear;
  ModulesForm.TreeView.Items.AddChild(ModulesForm.TreeView.Items.GetFirstNode, 'Output Modules');
  PlayerForm.XaudioPlayer.OutputModulesList;
end;

procedure TInfoForm.ListCodecModulesButtonClick(Sender: TObject);
begin
  ModulesForm.TreeView.Items.Clear;
  ModulesForm.TreeView.Items.AddChild(ModulesForm.TreeView.Items.GetFirstNode, 'Output Modules');
  PlayerForm.XaudioPlayer.CodecModulesList;
end;

end.

⌨️ 快捷键说明

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