Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Ereignisbehandlungsroutinen ohne Objektinspektor erstellen (https://www.delphipraxis.net/110522-ereignisbehandlungsroutinen-ohne-objektinspektor-erstellen.html)

Drop Table 19. Mär 2008 11:44


Ereignisbehandlungsroutinen ohne Objektinspektor erstellen
 
Hallo Leute,

habe schon den ganzen Vormittag das Forum durchsucht, aber leider kein verständliches Beispiel gefunden, dass mich einen Millimeter weiterbringt.

Beschäftige mich seit einigen Tagen mit der freien Turbo Delphiversion, und versuche mit Indy 9 POP3 auf ein connect Ereignis zu reagieren, weiss aber leider nicht wie man so eine Behandlungsroutine ohne anklicken auf den Object Inspektor erzeugt.

Delphi-Quellcode:
unit Unit2Pop3;

interface

uses
  SysUtils, Classes, IdPOP3;

type
  TdmPOP3 = class(TDataModule)
    procedure DataModuleCreate(Sender: TObject);
    procedure DataModuleDestroy(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    POP3Mail : TidPOP3;
  end;

var
  dmPOP3: TdmPOP3;

implementation

{$R *.dfm}

procedure TdmPOP3.DataModuleCreate(Sender: TObject);
begin
  POP3Mail := TidPOP3.Create(self);
  POP3Mail.APOP := false;
  POP3Mail.ASCIIFilter := false;
  POP3Mail.Port := 110;
  POP3Mail.Host := 'pop.example.com';
  POP3Mail.Username := 'pq@example.com';
  POP3Mail.Password := 'geheim';
end;

procedure TdmPOP3.DataModuleDestroy(Sender: TObject);
begin
  POP3Mail.Free;
end;

end.
Was ist hier einzufügen, um auf das OnConnect Ereignis der Komponente zu reagieren?

fragt
Andreas

Die Muhkuh 19. Mär 2008 11:56

Re: Ereignisbehandlungsroutinen ohne Objektinspektor erstell
 
Hallo Andreas,

versuch es mal so:

Delphi-Quellcode:
unit Unit2Pop3;

interface

uses
  SysUtils, Classes, IdPOP3;

type
  TdmPOP3 = class(TDataModule)
    procedure DataModuleCreate(Sender: TObject);
    procedure DataModuleDestroy(Sender: TObject);
    procedure POP3Connected(Sender: TObject);     // <<
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    POP3Mail : TidPOP3;
  end;

var
  dmPOP3: TdmPOP3;

implementation

{$R *.dfm}

procedure TdmPOP3.DataModuleCreate(Sender: TObject);
begin
  POP3Mail := TidPOP3.Create(self);
  POP3Mail.APOP := false;
  POP3Mail.ASCIIFilter := false;
  POP3Mail.Port := 110;
  POP3Mail.Host := 'pop.example.com';
  POP3Mail.Username := 'pq@example.com';
  POP3Mail.Password := 'geheim';
  POP3Mail.OnConnected := POP3Connected;   // <<
end;

procedure TdmPOP3.DataModuleDestroy(Sender: TObject);
begin
  POP3Mail.Free;
end;


procedure TdmPOP3.POP3Connected(Sender: TObject);   // <<
begin
  // Dein Code
end;
end.

Drop Table 19. Mär 2008 12:30

Re: Ereignisbehandlungsroutinen ohne Objektinspektor erstell
 
Zitat:

Zitat von Die Muhkuh
Delphi-Quellcode:
POP3Mail.OnConnected := POP3Connected;   // <<
end.

Aah, das ist die Zeile auf die es ankommt :idea:

Vielen, vielen Dank!


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:09 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz