解决方案 »
- 物流管理和销售管理软件设计及代码
- 能在Delphi5.0编写的DLL项目中,增加NameSpace吗?
- TWinControl中的滚动条是哪里来的?看了TStringGrid和它的几个祖宗,压根没见ScrollBar
- 截获数据包,请指教!
- delphi运行时的问题
- 救命了!!!!!!高分求货
- 去广州如何,大家提点建议吧!!
- 一个DBMemo的问题
- 同志们,interbase中如何将double precision字段转成numeric或decimal字段啊?
- Delphi的TreeView的Node有没有类似VB的TreeView的Node的Tag属性
- QRSubDetail 托到QRBand怎么看不见?
- TActiveFormFactory.Create(参数1,....参数N)应用!!急!!!!![
ComServer,
TActiveFormControl,
TActiveFormX,
Class_ActiveFormX,
1,
'',
OLEMISC_SIMPLEFRAME or OLEMISC_ACTSLIKELABEL,
tmApartment);
各个参数的意义
哪个指向被创建的实例
就用哪个喽!
俺也看不太懂!
呵呵!
实在不行自己声明个对象指针指向创建的实例就可以了!
tmpFrm……
initialization
tmpFrm := TActiveFormFactory.Create(
然后引用接口单元
直接frmActiveX.ShowMsg
我在想TActiveFormFactory.Create(ComServer,TActiveFormControl,TActiveFormX,Class_ActiveFormX,1,'',OLEMISC_SIMPLEFRAME or OLEMISC_ACTSLIKELABEL,tmApartment);
这个Create方法怎么才能写成MyActiveForm:=TActiveFormX .Create(nil);但是如果我替换上边的TActiveFormFactory.create(参数..)改为MyActiveForm:=TActiveFormX .Create(nil);结果编译不报错,但是IE里边就是显示不出来!!郁闷!!
如果能够获取IE运行时已经创建的TActiveFormX的实例那么就可以解决问题了!关键是,现在不知道怎么取!
implementation
var
MainForm:TActiveFormX ;procedure ReadActiveFormImpl1Data;
begin
MainForm:=aForm;//这样在其它方法体里就可以用MainForm直接访问TActiveFormX 的Public方法,
//子线程对TActiveFormX的Public的部件的调用也就OK了!嘿嘿!
end;end.
外部引用时,才能调用
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ActiveX, AxCtrls, ActiveFormProj1_TLB, StdVcl, StdCtrls;type
TActiveFormX = class(TActiveForm, IActiveFormX)
Button1: TButton;
Button2: TButton;
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private protected
{ Protected declarations } public
{ Public declarations } procedure ShowMsg; end;implementationuses ComObj, ComServ, Unit1;
procedure TActiveFormX.ShowMsg;
begin
ShowMessage('ActiveFormImpl');
end;procedure TActiveFormX.Button1Click(Sender: TObject);
begin
ReadActiveFormImpl1Data;
end;
procedure TActiveFormX.Button2Click(Sender: TObject);
begin
ReadActiveFormImpl1Data(Self);//嘿嘿,
end;
initialization
TActiveFormFactory.Create(
ComServer,
TActiveFormControl,
TActiveFormX,
Class_ActiveFormX,
1,
'',
OLEMISC_SIMPLEFRAME or OLEMISC_ACTSLIKELABEL,
tmApartment);
end.
//只是示意代码,别笑话我就行了,我在TActiveFormX 创建子线程,并且子线程中需要TAcitveFormX的Public函数,嘿嘿,才出此下策!!没办法的办法啊!TNND