Einzelnen Beitrag anzeigen

Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#1

"nil" wird nicht als Parameter für TNotifyEvent zu

  Alt 1. Nov 2005, 23:11
Hallo,

Ich habe diese beiden überladenen Methoden (in etwa):
Delphi-Quellcode:
  function AddMenuItem(Parent: TTBXSubmenuItem; ItemClass: TComponentClass;
    const Caption, Name, Hint: string; Tag, ImageIndex: Integer;
    OnClick: TNotifyEvent; ImageList: TImageList): TComponent; overload;
  function AddMenuItem(Parent: TTBXSubmenuItem;
    ItemClass: TComponentClass; Action: TBasicAction; const Name: string;
    Tag: Integer; Images: TImageList): TComponent; overload;
Versuche ich nun die erste Methode so aufzurufen:
  AddMenuItem(nil, nil, '', '', '', 0, -1, nil, nil); Das quittiert der Compiler mit:
Zitat:
[Fehler] Unit4.pas(78 ): E2250 Es gibt keine überladene Version von 'AddMenuItem', die man mit diesen Argumenten aufrufen kann
Schreibe ich das so, gehts:
  AddMenuItem(nil, nil, '', '', '', 0, -1, TNotifyEvent(nil), nil); Lasse ich die Überladung weg, habe also nur noch eine AddMenuItem Methode, geht es auch ohne den Type-Cast.

Ich konnte das mit Delphi 6, 7 und 2005 reproduzieren.
Schlimm ist es ja nun nicht, aber merkwürdig finde ich das schon...

Also, wo liegt die Ursache dieses "Phänomens"?

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat