procedure TfrmUseTime.FormCloseQuery(Sender: TObject;
  var CanClose: Boolean);
begin
  if btsave.Enabled then
    case
      application.MessageBox('有修改的數據沒有保存﹐要保存嗎﹖', '警告',
      MB_YESNOCANCEL + MB_DEFBUTTON1) of
      IDYES: btsave.OnClick(nil);
      idno: btcancel.OnClick(nil);
      idcancel: abort;
    end;
end;
我有很多這樣的窗口﹐每一個窗口都要用這段代碼﹐我能不能把它簡化一點﹐不要每個單元里都要去寫這一段

解决方案 »

  1.   

    Form2.OnCloseQuery:=FrmUseTime.OnCloseQuery;
      

  2.   

    Form2.OnCloseQuery:=FrmUseTime.OnCloseQuery;
      

  3.   

    to all:我還是初學初用D,模板是一個怎么樣的概念﹐能不能給一個簡單的例子
      

  4.   

    用继承最好了。我先你frmUserTime为基窗
    现在你新建一个Form,然后将
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;type
      TForm1 = class(TForm)  //将这里的TForm改为TfrmUseTime
      也就是改为TForm1 = class(TfrmUseTime)然后到窗体那里右键选“View as text”,
    将object Form1: TForm1 改为 inherited,然后右键选“View as Form”
    你就可以看见Form1继承了TfrmUseTime已有的控件,包括它的事件
    注意:继承好用但不可滥用
      

  5.   

    用继承最好了。我先你frmUserTime为基窗
    现在你新建一个Form,然后将
    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;type
      TForm1 = class(TForm)  //将这里的TForm改为TfrmUseTime
      也就是改为TForm1 = class(TfrmUseTime)然后到窗体那里右键选“View as text”,
    将object Form1: TForm1 改为 inherited Form1: TForm1 ,然后右键选“View as Form”
    你就可以看见Form1继承了TfrmUseTime已有的控件,包括它的事件
    注意:继承好用但不可滥用