比如:
ComPort:TComPort;
ComPort:=TComPort.Create(nil);
后面需要调用其事件OnRxChar,如何处理?

解决方案 »

  1.   

    ComPort.OnRxChar:=XXXX;//assign
    当事件发生的时候自然就会调用你的XXXX
    delphi是事件驱动,这一点不像其他语言,如C
      

  2.   

    事件一般不直接调用,一般只调用一个对象的方法,但是如果非要调用的话,也可以。比如按钮的点击时间Button1.OnClick;
    可以通过Button1.Click;来调用
    也可以通过向Button1发送消息来达到同样的效果
    SendMessage(Button1.Handle,WM_MOUSE_CLICK);//具体请察看相关资料
      

  3.   

    procedure FormCreate(Sender: TObject);
        procedure Button2Click(Sender: TObject);
      private
        procedure MyClick(sender: Tobject);  //定义自己的事件(在这里为onClick) 
      public
        { Public declarations }
      end;var
      Form1: TForm1;implementation{$R *.dfm}
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      Self.Button1.OnClick := MyClick; //将自己定义的事件指针钩住Button1的Onclick事件
    end;
    procedure TForm1.MyClick(sender: Tobject);
    begin
      ShowMessage('Button1 is Clicked')
    end;procedure TForm1.Button2Click(Sender: TObject);
    begin
      SendMessage(Button1.Handle, WM_LBUTTONDOWN, 0, 0); //模拟单击Button1
      SendMessage(Button1.Handle, WM_LBUTTONUP, 0, 0);
    end;
      

  4.   

    如果要理解事件,还是要看看的delphi源码