![]() |
Variablen eine Procedure benutzen
Hallo alle zusammen...
Ich habe ein kleines Problem. ich möchte eine Variable einer Procedure einer Komponente benutzen, ohne mich in der Procedure zu befinden bzw ohne, das ich die Procedure überhaupt benutze? Lasst mich raten Ihr versteht nicht was ich meine und warum ich es so haben möchte richtig? (kein wunder würd ich das lesen würde ich es auch net raffen) Also die Hauptanwendung besitzt eine Komponente die folgende Prozedur hat
Delphi-Quellcode:
zusätzlich benutzt die Hauptanwendung in den Uses eine Unit names license.pas (daran arbeite ich gerade)
procedure TForm1.IceLicenseFull(ExpiresInfo: Integer;
ExtraLicenseInfo: String); begin und in diese license.pas möchte ich gerne die Variable "ExtraLicenseInfo" aus der Procedure OnLicenseFull (des Hauptformulares) benutzen. Ich habe in der License.pas auch eine Komponente names "IceLicense1" erstellt, die = der Komponente ICE vom Hauptformular ist. Jetzt muss ich also die Variable "ExtraLicenseInfo" aus der Procedure "OnLicenseFull" der erstellten komponente IceLicense1 bekommen. Aber leider weiß ich net wie ich das am bessten machen kann... |
Re: Variablen eine Procedure benutzen
Kannst du denn nicht einfach den String als Parameter der Funktion in der license.pas übergeben? Oder anders gefragt: Wann rufst du die Funktionen der license-Unit auf?
|
Re: Variablen eine Procedure benutzen
??? Wie meinst du denn das jetzt? ExtraLicenseInfo ist ja nur ein Parameter der Prozedur. Was willst du daran denn benutzen? :gruebel:
//Edit: btw: Sicher, daß es sich um eine Prozedur einer Komponente des Hauptformulars handelt? So wie dein Code aussieht, gehört dei Prozedur direkt zum Hauptformular:
Code:
TForm1....
|
Re: Variablen eine Procedure benutzen
Zitat:
Abgesehen davon gibt es imho auch keine Möglichkeit den Parameter von außerhalb der Prozedur zu referenzieren. Ist nun mal eine Prozedur und kein Objekt. //Edit kein roter Kasten |
Re: Variablen eine Procedure benutzen
Zitat:
Aber ich könnte in der License.pas eine procedure erstellen, und diese Procedure der OnLicenseFull procedure zuweisen. Denn ziel ist es, das die License.pas auf alle anderen Anwendungen leicht anwendbar ist, und alles in der License.pas passieren soll. Wie kann ich denn am bessten eine Procedure einer zur laufzeit erstellten komponente zugreifen? |
Re: Variablen eine Procedure benutzen
Zitat:
Hi, am Einfachsten bzw. wie ich finde am Saubersten geht dass, indem du ein Interface oder eine Abstrakte Klasse verwendest. Diese hat dann die Methode LicenceFull(...); Nun leitest du in deinen Versionen einfach von der Klasse ab bzw. implementierst entsprechend das Interface. Wird nun eine Instanz von dieser Klasse erstellt, dann wird dir auch zur Laufzeit zugesichert, dass die Methode LicenceFull vorhanden ist. Hoffe ich hab dich richtig verstanden Gruß Der Unwissende |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:03 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