Пользователь

Добро пожаловать,

Регистрация или входРегистрация или вход
Потеряли пароль?Потеряли пароль?

Ник:
Пароль:

Меню сайта




Ваше мнение
Оцените скорость загрузки страниц сайта

Реактивная
Быстрая
Нормальная
Неважная
Медленная
Черепашья


Результаты
Другие опросы

Всего голосов: 971
Комментарии: 4


Наши партнеры



Статистика




Programming books  Download software  Documentation  Scripts  Content Managment Systems(CMS)  Templates  Icon Sets  Articles  Contacts  Voting  Site Search




Статьи и обзоры



Воспроизводим Flash-файл в своем приложении

Статьи по объектно-ориентированному программированию на языке Pascal и в среде программирования Delphi. Примеры работающего кода, тексты компонентов и классов, советы мастеров. Для воспроизведения видео в Delphi есть компонент TMediaPlayer. Но как быть если необходимо воспроизвести флэш-ролик? Оказывается в Delphi можно воспроизвести Flash ролики. Как же это сделать?

Для начала необходимо импортировать компонент ActiveX: для этого в главном меню выберите Component -> Immport ActiveX Control... Появляется окно. Найдите и выделите в списке Shockwave Flash (Version 1.0). Можно выбрать вкладку на панели инструментов - раздел Palette page. Не будем менять. Нажмите Install... Появится еще одно окно, в котором вам нужно будет выбрать в какой пакет будет установлен компонент. Нажмите ОК. Появится окно с подтверждением. Нажмите YES. И, наконец, появляется сообщение об успешной установке. Нажмите ОК. На экране остается еще одно окно - "Package - dclusr.dpk". Закройте его и подтвердите сохранение.

Компонент установили. Он появится во вкладке ActiveX на панели инструментов.

Для того, чтобы понять как с ним работать напишим простейший плеер. Выложите на форму: TShockwaveFlash(для удобства назовите его просто Flash1), TTrackBar, TOpenDialog, TTimer и 3 кнопки TButton. Измените Caption кнопок на "Открыть", "Воспроизведение", "Стоп".

Изменим следующие свойства OpenDialog'a:
Свойство Filter измените на Флэш-ролики|*.swf;
Свойство DefaultExt на *.swf;

У Timer1 установите свойство Interval на 1.

Теперь напишем обработчик события OnClick для кнопки, которая будет вызывать OpenDialog. Это кнопка с Caption="Открыть":

Код
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
Flash1.Movie := OpenDialog1.FileName; // укажем путь к файлу
TrackBar1.Max := Flash1.TotalFrames; // установим длинну ролика
end;
end;



По клику на кнопку "Воспроизведение" будем выполнять следующий код:

Код
procedure TForm1.Button2Click(Sender: TObject);
begin
Flash1.Play; // Воспроизвести
end;



А по клику на кнопку "Стоп" будем выполнять следующий код:

Код
procedure TForm1.Button3Click(Sender: TObject);
begin
Flash1.Stop; // Останавливаем воспроизведение
end;



И осталось еще автоматически двигать TrackBar. Для этого и нужен таймер.

Код
procedure TForm1.Timer1Timer(Sender: TObject);
begin
TrackBar1.Position:=Flash1.CurrentFrame;
end;



Вот и все. Полный код программы:

Код

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, OleCtrls, ShockwaveFlashObjects_TLB, ComCtrls,
ExtCtrls;

type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
Button3: TButton;
OpenDialog1: TOpenDialog;
TrackBar1: TTrackBar;
Timer1: TTimer;
Flash1: TShockwaveFlash;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute then
begin
Flash1.Movie := OpenDialog1.FileName;
TrackBar1.Max := Flash1.TotalFrames;
end;
end;

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

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

procedure TForm1.Timer1Timer(Sender: TObject);
begin
TrackBar1.Position:=Flash1.CurrentFrame;
end;

end.



Нет комментариев. Почему бы Вам не оставить свой?
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.
Внимание! Если у вас не получилось найти нужную информацию, используйте рубрикатор или воспользуйтесь поиском


.



Статьи и обзоры Delphi и TurboPascal Воспроизводим Flash-файл в своем приложении Для воспроизведения видео Delphi есть компонент TMediaPlayer Но как быть если необходимо воспроизвести флэш-ролик Оказывается можно Flash ролики Как же это сделать начала импортировать ActiveX для этого главном меню выберите Component -& Immport Control Появляется окно Найдите выделите списке Shockwave Version Можно выбрать вкладку на панели инструментов раздел Palette page Не будем менять Нажмите Install Появится еще одно котором вам нужно