我是菜鸟,请各位帮帮我,怎么样能在显示窗口完毕后执行一段程序? 我想在显示窗口完毕后执行一段程序,要把程序写动哪个事件里哦,请各位帮帮我!还有,我在DLL的工程程序里创建一个TreeView时,.Create(参数)要怎么写啊?请教教我,我试过用.Create(self)不行哦,帮帮忙 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我想在显示窗口完毕后执行一段程序,要把程序写动哪个事件里哦,请各位帮帮我!---------------------------------Re:是onClose事件中写。还有,我在DLL的工程程序里创建一个TreeView时,.Create(参数)要怎么写啊?请教教我,我试过用.Create(self)不行哦,帮帮忙---------------------------------Re:用Nil 在onactivate事件里写代码。DLL的不知道。 我想在显示窗口完毕后执行一段程序,要把程序写动哪个事件里哦----------------------------------------------------------如果一显示完就执行的话,完全可以放在onshow 事件里我在DLL的工程程序里创建一个TreeView时,.Create(参数)要怎么写啊?请教教我,我试过用.Create(self)不行哦----------------------------------------------------------uses SysUtils, Classes, ComCtrls;{$R *.res}Procedure aaa;var TV: TTreeView;begin TV := TTreeView.Create(nil);end;如果你想TV := TTreeView.Create(Application);那么需要引用Forms---------------------------------------------------------------- 花自飘零水自流,一种相思,两处闲愁。 此情无计可消除,才下眉头,又上心头。---------------------------------------------------------------- 不行啊,我这个窗体是MDI子窗体,一创建就show了 在onactivate事件里写代码。在DLL中 USE SHAREMEM 试试 zwjlp(斗鸡眼的猪) 在project的options菜单里把你这个窗体设成Available forms就不会显示了:)---------------------------------------------------------------- 花自飘零水自流,一种相思,两处闲愁。 此情无计可消除,才下眉头,又上心头。---------------------------------------------------------------- 问题1:在onactivate事件里写代码,好象是只要窗体被激活(click,show……)就激发。不知楼主的“显示”是否如此?问题2:关于传递的参数建义: var tv:ttreeview; procedure methodname(arg: TComponent); begin tv:=ttreeview.create(arg); ... end; 窗体掉用时: methodname(form1); To Shiyl(云淡风清(回到梦开始的地方)) :Application是TComponent吗? Shiyl(云淡风清(回到梦开始的地方)) 可是我这个窗体是DLL工程里的,没有这样的选项啊! sunspeedzy(子秦)是的 zwjlp(斗鸡眼的猪) 我测试了,在dll里没有办法创建MDi子窗体。期待答案---------------------------------------------------------------- 花自飘零水自流,一种相思,两处闲愁。 此情无计可消除,才下眉头,又上心头。---------------------------------------------------------------- 怎么可能没办法创建,我现在的程序就是这样的!!!可以运行,只不过我在创建完窗体后想读数据库用TreeView显示出来,问题就是窗体还没有显示完就在读数据库了,读数据库的那个过程又比较慢,造成窗体显示到一半,停了一会儿,读完数据库后才完全显示。所以我想在显示完窗体后或显示窗体前再读数据库啊!可是MDI窗体是一创建就显示的!所以我没有办法了!代码贴上,请大家帮帮忙 conPowerSetConnect:=TADOConnection(objMainConnect); Application.ShowMainForm:=False; PowerSetFrm:=TPowerSetFrm.Create(Application);//执行完这句,窗体就显示了!!! PowerSetFrm.queryroot.Connection:=conPowerSetConnect; PowerSetFrm.queryPowerList.Connection:=conPowerSetConnect; PowerSetFrm.treePowerList.Items.Clear; PowerSetFrm.ReadTree(PowerSetFrm.treePowerList.Items.Add(nil,'主目录'),'MainFrm');//执行到这儿窗体只显示一半就进入函数了!函数执行的时间比较久,这样就造成窗体显示到一半停了一下,等函数执行完才全部显示出来. 在onShow事件后还有个onResize,可以将代码放在这里。在dll中创建类可以这样写:reeView := TreeView.Create(nil); indy控件 客户端如何获得与服务器端的连接状态 listview简单问题 【Delphi版版服T恤方案征集】【正式开始!】 DELPHI的图标问题 关于 COALESCE 函数的使用问题...谢谢 如何知道某个NT服务是否存在?并且使自己的NT服务与之建立依存关系! 串口通讯问题 请教一个关于报表的问题~ 如何解决下面问题?200分 问题很简单,可我就是不会 求一简单的转换函数 以下程序怎么写,挺有挑战性的哟................300分
---------------------------------
Re:是onClose事件中写。
还有,我在DLL的工程程序里创建一个TreeView时,.Create(参数)要怎么写啊?请教教我,我试过用.Create(self)不行哦,帮帮忙
---------------------------------
Re:用Nil
DLL的不知道。
----------------------------------------------------------
如果一显示完就执行的话,完全可以放在onshow 事件里我在DLL的工程程序里创建一个TreeView时,.Create(参数)要怎么写啊?请教教我,我试过用.Create(self)不行哦
----------------------------------------------------------
uses
SysUtils,
Classes,
ComCtrls;{$R *.res}Procedure aaa;
var
TV: TTreeView;
begin
TV := TTreeView.Create(nil);
end;
如果你想TV := TTreeView.Create(Application);那么需要引用Forms
----------------------------------------------------------------
花自飘零水自流,一种相思,两处闲愁。
此情无计可消除,才下眉头,又上心头。
----------------------------------------------------------------
在DLL中 USE SHAREMEM 试试
在project的options菜单里把你这个窗体设成Available forms就不会显示了:)
----------------------------------------------------------------
花自飘零水自流,一种相思,两处闲愁。
此情无计可消除,才下眉头,又上心头。
----------------------------------------------------------------
问题2:关于传递的参数建义:
var tv:ttreeview;
procedure methodname(arg: TComponent);
begin
tv:=ttreeview.create(arg);
...
end;
窗体掉用时:
methodname(form1);
可是我这个窗体是DLL工程里的,没有这样的选项啊!
是的
zwjlp(斗鸡眼的猪)
我测试了,在dll里没有办法创建MDi子窗体。期待答案
----------------------------------------------------------------
花自飘零水自流,一种相思,两处闲愁。
此情无计可消除,才下眉头,又上心头。
----------------------------------------------------------------
conPowerSetConnect:=TADOConnection(objMainConnect);
Application.ShowMainForm:=False;
PowerSetFrm:=TPowerSetFrm.Create(Application);//执行完这句,窗体就显示了!!!
PowerSetFrm.queryroot.Connection:=conPowerSetConnect;
PowerSetFrm.queryPowerList.Connection:=conPowerSetConnect;
PowerSetFrm.treePowerList.Items.Clear;
PowerSetFrm.ReadTree(PowerSetFrm.treePowerList.Items.Add(nil,'主目录'),'MainFrm');//执行到这儿窗体只显示一半就进入函数了!函数执行的时间比较久,这样就造成窗体显示到一半停了一下,等函数执行完才全部显示出来.
在dll中创建类可以这样写:
reeView := TreeView.Create(nil);