![]() |
var Parameter in Ereignis
Hi,
ich wollte gerade ein eigenes Ereignis schreiben:
Delphi-Quellcode:
nur sagt delphi da:
TOnLogon = procedure(var HaltDef: Boolean = False);
Zitat:
Es gibt doch auch sowas wie:
Delphi-Quellcode:
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
|
Re: var Parameter in Ereignis
Ich würde mal sagen, beim OnCloseQuery wird CanClose auf true gesetzt, und dann dafst du es noch verändern, wenn du lustig bist :mrgreen:
Machs doch genauso ... Das "= False" weg, und jedes mal manuell vorher setzen |
Re: var Parameter in Ereignis
Hi,
dass ein var-Parameter kein default-Parameter sein kann, leuchtet doch irgendwie ein, denn wenn der Parameter default ist, muss er nicht übergeben werden, da er aber var ist, könnte er theor. geändert werden. -> Etwas nicht vorhandenes (übergebenes) zu ändern gestaltet sich schwierig :mrgreen: o.g. Lösung erscheint mir auch als geeignet :) Gruß Stephan :dance: |
Re: var Parameter in Ereignis
Da kann ich Steve nur zustimmmen, dass sowas nicht geht.
Der Vorteil bei solchen default-Parametern ist ja auch, dass man den Parameter beim Aufruf nicht unbedingt mit angeben muss (aber kann), da ja hierfür der default-Wert verwendet wird. Also kann man die Prozedur
Delphi-Quellcode:
folgendermaßen aufrufen:
procedure ParameterOderNicht(param1: Char= 'A');
Delphi-Quellcode:
Beide Varianten sind zulässig. Das ist u.a. dann von Vorteil, wenn eine Prozedur bis auf wenige Ausnahmen immer mit demselben Parameterwert aufgerufen wird und nur selten mit anderen Werten. Dann braucht man die Parameter nicht jedesmal mit in den Quelltext zu schreiben.
//mit Parameter:
ParameterOderNicht('B'); //ohne Parameter: ParameterOderNicht; (Praktisch für schreibfaule Programmierer :) ) MfG Binärbaum |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:13 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz