我想在主窗口显示之后根据需要自动显示一个模态窗口,不知道有什么好的办法?于是我想用TIMER,但不知道对?请高手指点,不知道还有什么好的办法?
ontimer里写:
timer1.Enabled:=false;
if 需要 then
begin
config:=Tconfig.Create(application);
config.ShowModal;
end
else
什么也不做;
(这里用不用释放TIMER,怎么办?)
另外关于释放内存的问题close,hide,Destroy,free怎么用法呢,最好简单易懂了,看书看得不太明白,怎么样才能彻底的释放呢?如果是设计时的控件不用了之后要不要释放呢,比如此时的TIMER?
谢谢指点。
ontimer里写:
timer1.Enabled:=false;
if 需要 then
begin
config:=Tconfig.Create(application);
config.ShowModal;
end
else
什么也不做;
(这里用不用释放TIMER,怎么办?)
另外关于释放内存的问题close,hide,Destroy,free怎么用法呢,最好简单易懂了,看书看得不太明白,怎么样才能彻底的释放呢?如果是设计时的控件不用了之后要不要释放呢,比如此时的TIMER?
谢谢指点。
解决方案 »
- 关于DELPHI怎样向SYBASE的数值型字段赋值
- Intraweb使用多线程时不正常的问题,不知道你们有没有解决过
- 应用程序如何读取web站点中的Access数据库中的数据?并将数据下载到本地。
- 用ado做查询,想实现像查询分析器(按文本方式显示查询结果)那样把结果集保存在文本文件里面。
- 这段代码怎么老是出错
- ActiveX控件正常下载后,我将.ocx和其他.dll文件自动下载到C:\winnt目录下,为何通过.ocx调用时提示找不到.dll呢
- 关于数据库登陆
- AD数据选择问题?
- VB中做报表经常用第三方控件,Delphi是不是就用自己带的最好呢?
- 使用adoconnection时,在程序中如何设定其connectstring
- vb函数转Delphi??
- 请教各位高手:为什么Edit不能输入?分不够再++++++++++ 急!!!!在线等!!!!!!!!
config.ShowModal;
这两句可以放在onshow中。
close:关闭
hide:隐藏,注意不是关闭
destroy:析构过程,一般不用在代码中调用
free:释放内存,这个最常用了,如form1.free;
close一般是窗口才有的方法,close通常情况下和hide 所起的作用相同,既隐藏窗口并不关闭,
但是如果你在Form的Onclose(或者是OncloseQuery我记不清了)事件里处理返回值为caFree,那么
close 也可以起到释放的作用,还有个特殊情况就是调用Application的主窗口会起释放的作用如果timer不是你动态创建的,你可以不用管他,程序退出时会释放他的!
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
procedure FormActivate(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.FormActivate(Sender: TObject);
var
i: Integer;
begin
for i := 0 to 100 do
begin
Sleep(100);
Application.ProcessMessages;
end;
Application.MessageBox('消息窗体显示了', '显示窗体', MB_OK + MB_ICONINFORMATION);
end;procedure TForm1.Button1Click(Sender: TObject);
begin
Randomize;
Button1.Left := Random(Self.Width - 100);
Button1.Top := Random(Self.Height - 100);
end;end.
这个你拿去看看!
============
正是,Free是用的最多的,也是很安全的,如果释放出问题,要出内存等异常的2,timer你不用管,用的时候enable,不用的时候disable,不然要占资源的,不过一般不会有问题
onshow 主窗口并未有显示啊,application.run没有运行?
to g961681(Rabby.W.)
onActivate时,如果从别的程序切换过来,是否也会触发这个事件呢?