请大家帮帮我,如何在DELPHI中控制控件窗体的大小随着母窗体的大小而变化?(50分)

  • 主题发起人 主题发起人 志在DELPHI
  • 开始时间 开始时间

志在DELPHI

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大虾,您们好小弟刚开始学习DELPHI的编程,请大家多多帮助我,谢谢。
我最近在DELPHI扣写了一个FLASH的控件,也就是写一个小型的FLASH播放器,
但是我却不知道如何在窗体中控制FLASH控件的大小随着窗口的大小而改变,
我写的程序的母窗体大小可以变化,但是FLASH的控件的大小却不能变化,
请各位大虾帮帮我,小弟这里有礼了。
 
把控件的align设成alclient就行了
不行的话在试试autosize,strech等属性
 
朋友这样做不是行的你试试FLASH的控件呀。
把控件的align设成alclient就行了
不行的话在试试autosize,strech等属性
 
是吗?
哪儿有flash控件,我去下一个看
 
事情远没有那么麻烦,你的机器上只要装了FLASH程序,再打开DELPHI,在COMPONENT
菜单下选择“IMPORT ACTIVEX COMPONENT”项,再从随后出现的列表项中选择
SHOCKWAVEFLASH 1。0就行了,你可以先试一下呀,看一下是不是这样的。
然后再说如何控制控件的窗体的大小变化。

 
unit Unit1;

interface

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

type
TForm1 = class(TForm)
flash: TShockwaveFlash;
Timer1: TTimer;
Button1: TButton;
procedure FormResize(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormResize(Sender: TObject);
begin
form1.Timer1.Enabled:=true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
sendmessage(button1.handle,wm_keydown,vk_space,1);
sendmessage(button1.handle,wm_keyup,vk_space,1);
timer1.enabled:=false;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
sendmessage(flash.handle,wm_lbuttondown,0,0);
sendmessage(flash.handle,wm_lbuttonup,0,0);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
flash.Movie :='d:/screensave.swf';
end;

end.

注:button1设为不可见
奇怪:直接对FLASH SENDMESSAGE没用,而通过BUTTON转一下就OK了,气人
 
朋友,真的应该好好感谢您呀。哈哈。不过,我这里还有一个问题,你给的解决方法我已经试过了
还是可行的呀。但是,不知你用过FLASH的自带的FLASHPLAYER没有,人家的窗体变化可不是
那么的慢呀。另外,您的解决方法是通过定时地向FLASH的控件发送信号得到的。
我想还应该通过FLASH的自带的控件事件或者例程有解决的更好的办法呀。
朋友,如果你有时间的话不妨用一下FLASH的控件带的所有方法及事件处理,看一下,
有没有更好的解决办法呀。

哈哈。我还是要感谢你的。
谢谢,我是刚学习DELPHI的编程的。
以后请多照顾。

我的50分就送给您了。
不过我可还想得到你的进一步的帮助呀。

谢谢。
 
后退
顶部