我在做MDI的时候~
var formdefine:TForm;
begin
Formdefine:=TForm.Create(self);
Formdefine.FormStyle:=fsMDIChild;
Formdefine.Show;
Formdefine.WindowState:=wsMaximized;
Formdefine.Free;
end;
运行的时候:
子窗体就不见了~望高手们能回答。
var formdefine:TForm;
begin
Formdefine:=TForm.Create(self);
Formdefine.FormStyle:=fsMDIChild;
Formdefine.Show;
Formdefine.WindowState:=wsMaximized;
Formdefine.Free;
end;
运行的时候:
子窗体就不见了~望高手们能回答。
解决方案 »
- 请问XlGrid打印的方法是什么?
- fastreport中SUM的用法請教
- 怎样用tidtcpclient从服务器下载图像(图像在500K左右)着急用......
- 急!Virtual Treeview中如何任意控制某一节点的显示图标
- SQL SERVER 6.5 数据库移植到 2000 中出现中文乱码,如何着为查询条件?
- 始终没能解决的一个关于标识字段的问题?
- 如何将table1.state从edit状态改成browse状态?
- 怎样在SQL的存储过程里读一条读数据里的记录?
- 求解?数据库无法删除是何原因?
- 我想开发一个三层结构的进销存软件问题?
- 有写过签名程序的高手吗?请进来坐一坐
- 线程里创建com对象,提示没调用CoInitialize
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls;type
TForm1 = class(TForm)
pnl1: TPanel;
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
procedure CaptionRefresh;
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
begin
with TForm.Create(Application) do
begin
FormStyle := fsMDIChild;
OnClose := FormClose;
Show;
end;
CaptionRefresh;
end;procedure TForm1.CaptionRefresh;
begin
Caption := '共有[ ' + IntToStr(Self.MDIChildCount) + ' ]个子窗体!';
end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;end.
程序执行完后再执行的这一句,
这一句就是关闭窗体了!
(1)var formdefine:TForm;
begin
Formdefine:=TForm.Create(self);
Formdefine.FormStyle:=fsMDIChild;
Formdefine.Showmodal;
Formdefine.WindowState:=wsMaximized;
Formdefine.Free;
end;
(2)var formdefine:TForm;
begin
Formdefine:=TForm.Create(self);
Formdefine.FormStyle:=fsMDIChild;
Formdefine.Show;
Formdefine.WindowState:=wsMaximized;
//去掉
end;
在Formdefine的Onclose事件里面用,FreeAndNil(Formdefine)