TObjectList class differente
Bonjour, je souhaiterais avoir une liste avec des modes différents de sauvegarde, chaque mode ayant sa propre classe.
J'ai commencé comme ci-dessous, Je viens demander vos précieux conseils, est-ce la bonne façon de procéder ?
au départ je testais avec ClassName = 'TBackupModeLocal'
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
| Unit uBackupMode;
Interface
Uses
Classes, Generics.Collections;
Type
TMode = (mLocal, mFTP);
TBackupMode = Class
Public
Mode: TMode;
End;
TBackupModeLocal = Class(TBackupMode)
Constructor Create;
End;
TBackupModeFTP = Class(TBackupMode)
Constructor Create;
End;
TListBackupMode = Class(TObjectList<TBackupMode>)
End;
Var
ListBackupMode: TListBackupMode;
Implementation
{ TBackupModeLocal }
Constructor TBackupModeLocal.Create;
Begin
Mode := mLocal;
End;
{ TBackupModeFTP }
Constructor TBackupModeFTP.Create;
Begin
Mode := mFTP;
End;
Initialization
ListBackupMode := TListBackupMode.Create;
Finalization
ListBackupMode.Free;
End. |
Code:
1 2 3 4 5 6 7
|
ListBackupMode.Add(TBackupMode(TBackupModeLocal.Create));
If ListBackupMode.First.Mode = mLocal Then
Begin
// with TBackupModeLocal(ListBackupMode.First) do
// ...
End; |
Merci d'avance.