在MDI下设计界面如何向子窗体传递参数???

zhaowin8888 2003-10-17 12:13:08
在设计MDI界面时, 我们都是做一共用的处理子界面显示的Procedure来统一处理MDI子界面的Create、 Show、 BringToFront等,甚至单实例,为了使子MDI在Show时处理不同的数据而需要在Show前确定某些参数,但MDI子窗体显然不可,有何好的建议.

类似SDI下的Form1.ID := '111';处理:

Form1 := TForm1.Create(Self);
Form1.ID := '111';
Form1.Showmodal;
Form1.Free;
...全文
81 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhaowin8888 2003-10-18
  • 打赏
  • 举报
回复
明白, 多谢.
youcheng1 2003-10-18
  • 打赏
  • 举报
回复
to:zhaowin8888(zhao)
为每个窗体建立一个构造函数是面向对象编程的规则。
zhaowin8888 2003-10-18
  • 打赏
  • 举报
回复
那不是每一个需要传递不同参数的MDI子界面都要建立如此一个函数.
zhoutian618 2003-10-17
  • 打赏
  • 举报
回复
定义一个构造函数吧。
TForm1 = class(TForm)
private
ID: string;
public
constructor Create(AOwner: TComponent; ID: string;)
end;

im...

procedure TForm1.Create(AOwner: TComponent; ID: string);
begin
Self.ID:=ID;
inherited Create(AOwner);
end;

procedure TForm1.FormShow(Sender: TObject);
begin
//在该事件中处理
end;
sailer_shi 2003-10-17
  • 打赏
  • 举报
回复
那你要是直接在主窗体上定义好参数呢?这样的话不就可以了吗!

5,379

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧