标题:如何设计对话框窗口
只看楼主
yeye55
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:152
注 册:2007-1-19
 问题点数:0 回复次数:2 
如何设计对话框窗口
我想设计一个对话框窗口,该窗口活动时无法激活其它窗口,除非先关闭这个窗口。对于一个已经设计好的Form窗口(从TForm派生)如何实现这种功能?其它开发平台可以指定一窗口为模式窗口或非模式窗口来解决这个问题,但Delphi的Form窗口好象没有找到相应的属性。
搜索更多相关主题的帖子: 对话框窗口 Form 设计 平台 属性 
2007-03-04 23:18
yeye55
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:66
专家分:152
注 册:2007-1-19
得分:0 
问题解决了,方法如下:

在自己设计的Form的OnCreate事件中修改一下Form的属性:

procedure TForm2.FormCreate(Sender: TObject);
begin
self.Visible:=false;
self.Enabled:=true;
self.FFormState:=self.FFormState-[fsModal];
self.FormStyle:=fsNormal; //不是fsMDIChild都可以
end;

模式对话框的创建代码如下:

procedure TForm1.Button1Click(Sender: TObject);
var
f : TForm2;
begin
f:=TForm2.Create(Application);
try
if f.ShowModal=mrOk then //显示这个窗体
{执行一些代码}
finally
f.Free;
end;
end;

我的百度空间→http://hi.baidu.com/yeye55
2007-03-05 10:36
autosun
Rank: 1
来 自:辽宁沈阳
等 级:新手上路
帖 子:107
专家分:0
注 册:2007-1-21
得分:0 
这不是很好吗?

2007-03-10 10:57



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-122523-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.083176 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved