AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Record im Array nutzen? - Sinnvollere Wege?
Thema durchsuchen
Ansicht
Themen-Optionen

Record im Array nutzen? - Sinnvollere Wege?

Ein Thema von Asura · begonnen am 10. Jul 2015 · letzter Beitrag vom 20. Jul 2015
 
Asura

Registriert seit: 10. Jun 2013
87 Beiträge
 
#14

AW: Record im Array nutzen? - Sinnvollere Wege?

  Alt 18. Jul 2015, 19:23
Guten Tag,
und zwar habe ich mich nun an der Klasse und an der Objectlist versucht:
Meine Klasse "Employee" hat die Properties, wie von Sir Rufo bereits vorgeschlagen.
Ich habe dann die Objectliste erstellt "OLEmployees".
Meine vorgehensweise sieht wie folgt aus:
Ich speichere in die Properties die Inhalte der Textfelder. Danach adde ich der Objectliste die Klasse Employee als neues Item dazu.

Die Initialisierungen und das Freigeben lasse ich hiermal weg, die finden in der Haupt-Unit im OnCreate und OnClose Event statt.

Delphi-Quellcode:
procedure TF_AddEditEmployee.btn_AddEditClick(Sender: TObject);
var EmployeeData: TStringlist;

begin

  EmployeeData := TStringlist.Create;

  EmployeeData.Add(edt_CardID.Text);
  EmployeeData.Add(edt_PreName.Text);
  EmployeeData.Add(edt_SurName.Text);
  EmployeeData.Add(DatetoStr(dt_Birthday.Date));
  EmployeeData.Add(edt_WorkStation.Text);
  EmployeeData.Add(edt_Position.Text);


      F_Employees.SelCardID := StrtoInt(edt_CardID.Text);

      try
        AddEmployeeData(F_Main.OLEmployees.Count, EmployeeData);

      except
        Messagebox(Self.Handle, 'Mitarbeiter konnte nicht hinzugefügt werden', 'Fehler',
                   MB_ICONWARNING or MB_OK);
      end;

      close;

  EmployeeData.Free;

end;

Delphi-Quellcode:
// *************************** Mitarbeiterhinzufügen ***************************

procedure AddEmployeeData(Index: Integer; EmployeeData: TStringlist);
begin

  F_Main.Employee.CardID := StrtoInt(EmployeeData[0]);
  F_Main.Employee.Prename := EmployeeData[1];
  F_Main.Employee.Surname := EmployeeData[2];
  F_Main.Employee.Birthday := StrtoDate(EmployeeData[3]);
  F_Main.Employee.Workstation := EmployeeData[4];
  F_Main.Employee.Position := EmployeeData[5];

  F_Main.OLEmployees.Add(F_Main.Employee); // Employee Daten werden als neuer Eintrag gespeichert

end;
Meine Frage ist nun, ist das so richtig und wie kann ich nun wieder aus der Objectliste heraus das richtige Item finden? Ich kann ja schlecht IndexOf benutzen, da ja alle Items das gleiche Object (Employee) haben nur mit anderen Properties.
Zurzeit wäre ja jedes neue Item der Objectlist ein neuer Mitarbeiter mit den Eigenschaften von Employee.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:19 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