Avatar billede hugopedersen Nybegynder
10. juni 2015 - 14:25 Der er 4 kommentarer og
1 løsning

Overstyrre arv

Jeg har en class der hedder TRuntime som består af nogle indstillinger til mine programmer. Denne Class arver fra TRuntimeBase som indeholder alle de standardinstillinger jeg altid bruger og gemmer/læser dem fra en .ini fil
Jeg har en TRuntime class for hvert program

Nu vil jeg så gerne have mulighed for at lave en funktion/property i TRuntime som hedder det samme som den i TRuntimeBase men den skal læse fra en database i stedet for.

Hvordan skruer jeg lige det sammen så det virker og så min TRuntimeBase stadig virker i mine andre programmer.

Håber det virker gennemskueligt, ellers må I lige sige til så skal jeg prøve at skrue et lille eksempel sammen.
Avatar billede arne_v Ekspert
10. juni 2015 - 17:33 #1
Tilfoej virtual paa getter/setter i TRuntimeBase.

Tilfoej override paa getter/setter i TRuntime.
Avatar billede hugopedersen Nybegynder
11. juni 2015 - 08:51 #2
OK - så skal jeg lave lidt om så jeg har en function/procedure til hver property?

Jeg bruger næsten aldrig getters/setters men direkte på en field
f.eks. property TsEmployer: string read fTsEmployer write fTsEmployer;

Men er det det der skal til så er det jo bare at komme igang.

Jeg vender tilbage (sidder lige med et problem med at få Excel til at gemme som pdf via automation fra XE7)
Avatar billede arne_v Ekspert
11. juni 2015 - 14:27 #3
Eller saa skal du have en Init metode som henter vaerdier og som er forskellig i klasserne mens resten er ens.
Avatar billede hugopedersen Nybegynder
07. juli 2015 - 19:35 #4
Undskyld ventetiden - der har været lidt med min sygdom der har taget min tid.

Det lader til at det virker som du skriver. Måske lidt mere arbejde end forventet, men :-)

Smid et svar og få point.
Avatar billede arne_v Ekspert
07. juli 2015 - 23:25 #5
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester