Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Мультимедиа в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.04.2017, 18:33   #1
Ednikbod
Пользователь
 
Регистрация: 13.10.2015
Сообщений: 21
По умолчанию Проблема с компонентом WMPLib из вкладки ActiveX (не движется Trackbar)

Здравствуйте!

Исчерпал все свои возможности в вариантах написания кода и в поисках ответа в интернете.

Пробую заместо стандартного компонента проигрывателя (из вкладки System) использовать компонент ActiveX, Windows Media Player.

Натолкнулся на проблему: при проигрывании файла (MP3 или WMV) совсем не движется бегунок трекбара. Устал мудрить с таймером и с прочим. Ищу у вас совета. Дело в том, что в стандартном компоненте проигрывателя - там всё было понятно, а в ActiveX код совсем другой, методом тыканья найти результат не получается.

Вот код (один из многих вариантов):
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ComCtrls, ExtCtrls, StdCtrls, Menus, OleCtrls, OleServer, WMPLib_TLB,
  Gauges;

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    Panel1: TPanel;
    MainMenu1: TMainMenu;
    N1: TMenuItem;
    N2: TMenuItem;
    N3: TMenuItem;
    N4: TMenuItem;
    N5: TMenuItem;
    N6: TMenuItem;
    N7: TMenuItem;
    N8: TMenuItem;
    N9: TMenuItem;
    N10: TMenuItem;
    N11: TMenuItem;
    N12: TMenuItem;
    OpenDialog1: TOpenDialog;
    MediaPlayer1: TWindowsMediaPlayer;
    Timer1: TTimer;
    TrackBar1: TTrackBar;
    procedure N2Click(Sender: TObject);
    procedure N6Click(Sender: TObject);
    procedure N7Click(Sender: TObject);
    procedure N8Click(Sender: TObject);
    procedure ListBox1Click(Sender: TObject);
    procedure N3Click(Sender: TObject);
    procedure N4Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure TrackBar1Change(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  I: Integer;

implementation

{$R *.dfm}

procedure TForm1.N2Click(Sender: TObject);
begin
if OpenDialog1.Execute then
MediaPlayer1.URL:= OpenDialog1.FileName;
for i:= 0 to OpenDialog1.Files.Count -1 do
ListBox1.Items.Strings[ListBox1.ItemIndex]:= OpenDialog1.Files[i];
MediaPlayer1.controls.stop;
end;

procedure TForm1.N6Click(Sender: TObject);
begin
MediaPlayer1.controls.play;
end;

procedure TForm1.N7Click(Sender: TObject);
begin
MediaPlayer1.controls.pause;
end;

procedure TForm1.N8Click(Sender: TObject);
begin
MediaPlayer1.controls.stop;
end;

procedure TForm1.ListBox1Click(Sender: TObject);
begin
MediaPlayer1.URL:= ListBox1.Items.Strings[ListBox1.ItemIndex];
MediaPlayer1.controls.stop;
end;

procedure TForm1.N3Click(Sender: TObject);
begin
ListBox1.DeleteSelected;
end;

procedure TForm1.N4Click(Sender: TObject);
begin
ListBox1.Clear;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if MediaPlayer1.URL <> '' then
TrackBar1.Position:= MediaPlayer1.controls.currentMarker;
end;

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
MediaPlayer1.controls.currentPosition:= TrackBar1.Position;
end;

end.
Ednikbod вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Опять траблы с компонентом TrackBar FleXik Общие вопросы Delphi 2 09.12.2012 02:24
Проблема с компонентом TrackBar FleXik Общие вопросы Delphi 5 07.12.2012 19:57
Проблема с условием к trackbar Alex2012 C# (си шарп) 1 08.10.2011 03:10
После установки VS2010 и запуска моего проекта появилась проблема..., Конкретно с WMPLib. Casper-SC Общие вопросы .NET 1 23.05.2010 15:12
проблема с TrackBar`ом AndrewASV Общие вопросы Delphi 2 22.11.2007 22:21