![]() |
Vaiable bekannt machen
ich habe ne Variable Session ein einfaches Property of string.
jetzt habe ich 2 Klassen in der einen wird session angelegt, der anderen ist die nicht bekannt. Wie kann ich diese jetzt der 2 Klasse bekannt machen ohne das ich diese über 4>5 Funktionen durchschleifen muss.
Delphi-Quellcode:
TTheMDB = class
private FSession: string; public property Session: string read GetSession write SetSession;
Delphi-Quellcode:
TMovieDataList = class
private procedure addMovieData(aJson: TJSON; QueryMode: BOOL; Session: string); procedure fillfromJson(const aJsonString: string; QueryMode: BOOL; Session: string); procedure FillList(aJson: TJSON; QueryMode: BOOL; Session: string); public constructor create(const aJsonString: string; QueryMode: BOOL; Session: string);
Delphi-Quellcode:
Ich möchte also Session nicht durch die ganzen Funktionen durchschleifen.
function TTheMDB.GetMovieInfo(MovieTitle: string): boolean;
var lWideFileData: string; begin Result := False; try if GetMovieInfoString(MovieTitle, lWideFileData) then begin Session := UpperCase(MidStr(MovieTitle, Length(MovieTitle) - 6, 7)); flist := TMovieDataList.create(lWideFileData, QueryMode, Session); end; Result := ValidData; except on e: exception do ShowMessage(e.Message); end; end; Geht das eleganter? gruss |
AW: Vaiable bekannt machen
Es würde doch langen, den im Konstruktur von TMovieDataList übergebenen Parameter Session in ein privates Feld (z.B. FSession) derselben Klasse zu speichern, so dass dieses Feld in den anderen Methoden verwendbar ist. Übersehen ich etwas?
Grüße Dalai |
AW: Vaiable bekannt machen
Zitat:
Versuche gerade ne Basis Class dafür anzulegen. so das beide von dieser erben können. gruss |
AW: Vaiable bekannt machen
Zitat:
Delphi-Quellcode:
Einmalig übergeben, in der Klasse speichern und nutzen. Geht natürlich nur, wenn es immer dieselbe Session ist.
TMovieDataList = class
private FSession: string; procedure addMovieData(aJson: TJSON; QueryMode: BOOL); procedure fillfromJson(const aJsonString: string; QueryMode: BOOL); procedure FillList(aJson: TJSON; QueryMode: BOOL); public constructor create(const aJsonString: string; QueryMode: BOOL; Session: string); implementation constructor TMovieDataList.Create(...) begin inherited Create; FSession:= Session; ... end; Grüße Dalai |
AW: Vaiable bekannt machen
Zitat:
gruss |
AW: Vaiable bekannt machen
Zitat:
Grüße Dalai |
AW: Vaiable bekannt machen
Zitat:
Habe es mit einer Basis Classe versucht aber FSession ist leer sobald ich diese mit der TMovieDataList abfrage. Die Session wird in der classe TTheMDB erstellt. Beide classen erben von der Basis Classe TTheMDB = class(TBasisClass) usw.. Ist mir jetzt zu viel stress.. glaube schleife die einfach durch und gut ist. Danke.. gruss |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:37 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 by Thomas Breitkreuz