例如,我在代码中想定义
ComboBox1.OnChange:= (procedure )
这个过程我应该怎样定义程TNotifyEvent类型呢?
谢谢大家了。

解决方案 »

  1.   

    TForm1 = class(TForm)
        ComboBox1: TComboBox;
        procedure myComboBoxChange(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;
    ......
    procedure TForm1.myComboBoxChange(Sender: TObject);
    begin
    ...
    end;
    ComboBox1.OnChange := myComboBoxChange;
      

  2.   

    在TForm1.FormCreate事件里写
     form1.ComboBox1.OnChange:=form1.myComboBoxChange;
      

  3.   

    只是多一个Sender而以没什么不一样的,你完全可以不用这个参数,不就是过程了吗?
      

  4.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs, StdCtrls, DB, Grids, DBGrids, DBTables;type
      TForm1 = class(TForm)
        Table1: TTable;
        DataSource1: TDataSource;
        Button1: TButton;
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;
     // 你指的过程是指在这里定义的过程吧
      procedure Button1Click;implementation{$R *.dfm}procedure Button1Click;
    begin
      ShowMessage('dkfjdka');
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
     // 这样赋值就行了
      @Button1.OnClick :=@Button1Click;
    end;end.