Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

Как заставить Flash перерисовывать себя при отображении   Найти похожие ветки 

 
П7   (2004-07-27 15:39) [0]

Собственно пишу:

var
 Flash : TShockwaveFlash;
begin
 Flash.Left := 0;
 Flash.Top := 0;
 Flash.Width := ClientWidth;
 Flash.Height := ClientHeight;

 Flash.Movie := SwfFilePath;
 Flash.Play();


Ролик из одного кадра. В итге он рисуется такого размера, какого был VCL Flash при редактировании формы. Если кликнуть по Flash, то он перерисуется в нормальном размере.

Сабж.


 
П7   (2004-07-27 17:14) [1]

Неужели никто не вставлял в свою программу Flash-ролик?


 
VMcL ©   (2004-07-27 17:24) [2]

Попробуй так:

procedure TAppForm.FormResize(Sender: TObject);
begin
 КакойТоДругойКонтрол.SetFocus;
 Flash.SetFocus;
end;


 
П7   (2004-07-27 17:30) [3]

Спасибо, помогло. Но неужели это единственный способ?
Кстати, не знаешь, как заблокировать нажатие правой кнопки мыши, чтобы менюшка не вызывалась?


 
VMcL ©   (2004-07-27 18:33) [4]

>>П7   (27.07.04 17:30) [3]

>Кстати, не знаешь, как заблокировать нажатие правой кнопки мыши, чтобы менюшка не вызывалась?

Я не знаю.


 
Аним   (2004-07-27 19:16) [5]


> как заблокировать нажатие правой кнопки мыши, чтобы менюшка
> не вызывалась?


Поставь TApplicationEvents и обработай мессагу:

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
 var Handled: Boolean);
begin
 if msg.message = WM_RBUTTONDOWN then
   Handled := True;
end;


 
П7   (2004-07-28 09:18) [6]


> Аним   (27.07.04 19:16) [5]

Сделал как ты написал. Событие не срабатывает. Может TApplicationEvents нужно как-то к форме прикрутить? Или компоненту TShockwaveFlash?


 
Аним   (2004-07-28 12:19) [7]

Ты поставил компонент TApplicationEvents на форму c панели Additional, и прописал в эвенсе OnMessage то что я написал?


>  if msg.message = WM_RBUTTONDOWN then
>    Handled := True;


и не пашет?!
у меня пашет

p.s.
не пахать не может


 
Sapersky   (2004-07-28 12:54) [8]

Но неужели это единственный способ?

Flash.DoObjectVerb(-1);


 
П7   (2004-07-28 16:40) [9]


> Sapersky   (28.07.04 12:54) [8]

Это куда нужно вставить? До Flash.Play(); или после?


> Аним   (28.07.04 12:19) [7]

Странно... Он у меня вообще не страбатывает. Не только левая клавиша мыши, но и вообще любое сообщение... ):


 
Аним   (2004-07-28 17:37) [10]


> П7   (28.07.04 16:40) [9]


читай почту.


 
Аним   (2004-07-28 17:37) [11]


> П7   (28.07.04 16:40) [9]


читай почту.


 
Zevs   (2004-07-28 20:11) [12]

Смотри исходник TShockwaveFlashEx на www.delphiflash.com
Он лежит там в каком то пакедже.


 
П7   (2004-07-29 10:00) [13]


> Аним   (28.07.04 17:37) [11]

Преогромное спасибо!!! (: Всё работает.

Кстати, продумана даже такая мелоч -> Если не "патчить" класс и поставить параметр Menu равным false, то показывается урезанная менюшка. Это понятно. Но если "пропатчить" класс, но оставить параметр Menu равным true, то событие с "обрезанием" вывода менюшки не страбатывает. Только если поставить Menu равнм false - нифига не показывается, иначе - всё работает. Что собственно и нужно было!!! (: Полный контроль над воспроизведением. (:



Страницы: 1 вся ветка

Текущий архив: 2004.10.24;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.028 c
1-1097126943
П7
2004-10-07 09:29
2004.10.24
Эмуляция "незапуска" программы


1-1097224161
LKan
2004-10-08 12:29
2004.10.24
Очистка экрана


1-1097178595
dms_main
2004-10-07 23:49
2004.10.24
Application.minimize


3-1096400500
Вадим
2004-09-28 23:41
2004.10.24
Сохранность данных


3-1096013860
Term
2004-09-24 12:17
2004.10.24
Автоинкремент в MSSQL2000