
28.09.2009, 00:07
|
|
Участник форума
Регистрация: 05.06.2009
Сообщений: 127
С нами:
8912059
Репутация:
249
|
|
Код:
Some additions
Actually TShockwaveFlash and some its methods do not always work correctly. For example, the movie does not stretch automatically resizing of a parent window; property Menu does not make disabled the popup menu completely; property PopupMenu does not show the custom menu. Some tips how to expand the TShockwaveFlash possibilities are below.
Fixed visual bugs with resizing
Код:
TShockwaveFlash = class (TOleControl)
...
public
Procedure CreateWnd; override;
...
Procedure TShockwaveFlash.CreateWnd;
begin
inherited;
end;
// in main unit
Procedure TMain.OnResize (sender: TObject);
begin
ShockwaveFlash.CreateWnd;
end;
отсюда
Поправил исходники (скаченные с того же сайта) как сказано там, по - моему оно работает. Но работает со стандартным подходом - присваиваем width,height формы, создается как надо. Потом вызываем процедуру Flash.CreateWnd;
Код:
uses ShockwaveFlashlols_TLB...
var
Form1: TForm1;
Flash : TShockwaveFlash;
procedure TForm1.Button5Click(Sender: Tlol);
begin
Flash := TShockwaveFlash.Create(self);
Flash.Parent := self;
Flash.Width :=form1.Width;
Flash.Height :=form1.Height;
Flash.CreateWnd;
Flash.Movie:='C:\prank.swf';
Flash.Play;
end;
procedure TForm1.FormResize(Sender: TObject);
begin
Flash.Width :=form1.Width;
Flash.Height :=form1.Height;
Flash.CreateWnd;
end;
Можно через SendMessage попробовать послать событие нажатия левой кнопки мыши на Flash.
Последний раз редактировалось Dosia; 28.09.2009 в 00:26..
|
|
|