Показать сообщение отдельно

  #4479  
Старый 28.09.2009, 00:07
Dosia
Участник форума
Регистрация: 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..
 
Ответить с цитированием