TMS TAdvOutlooklist (Teil 3)

Nachdem man eine Outlookliste (TAdvOutlookList), siehe Teil 1 und Teil 2 dieser Serie, mit Daten, z.B. aus einer Datenbank gefüllt hat, stellt ich nun die Frage, wie man einzelne Datenzeilen aktualisiert, z.B. wenn jede Zeile einen Datenbankeintrag entspricht und die einzelnen Spalten einzelnen Feldinhalten. Nun hat man diesen Datensatz bearbeitet und man möchte natürlich nicht die ganze Liste wieder einlesen, sondern nur die betreffende Zeile aktualisieren.

Dies ist relativ einfach:

IF ADVOutlookListe.FocusedItem<>Nil then
begin

// ermittelt das aktuelle Item vom Typ PoglItem;
pItem := ADVOutlookListe.FocusedItem;
// ermittelt die Gruppe des aktuellen Eintrags vom Typ TOutlookGroup;
og := AdvOutlookListe.ItemGroup(pItem);
// ermittelt den Index dieser Gruppe innerhlab der Liste vom Typ Integer
groupIndex := AdvOutlookListe.MaListe.GroupIndex(og);
// ermittelt den Indexeintrag des aktuellen Eintrags innerhalb dessen Gruppe, Rückgabewert vom Typ Integer
iIndex := AdvOutlookListe.MaListe.Groups[groupIndex].ItemIndex(pItem);

Nun haben wir alles zusammen um die einzelnen Spalten der aktuelle Zeile anzuprechen und
mit den geänderten Daten zu aktualisieren

AdvOutlookListe.Groups[groupIndex].ChildItem[iIndex].Strings[0] := ‚Mein aktualisierter Text Spalte 1‘;
AdvOutlookListe.Groups[groupIndex].ChildItem[iIndex].Strings[1] := ‚Mein aktualisierter Text Spalte 2‘;
AdvOutlookListe.Groups[groupIndex].ChildItem[iIndex].Strings[2] := ‚Mein aktualisierter Text Spalte 3‘;

usw.

Für das Beispiel müssen Sie folgende Variablen deklarieren:

pItem: PoglItem;
og: TOutlookGroup;
iIndex, groupIndex: Integer;

und benötigen folgende Units im Uses-Abschnitt:

OutLookGroupedList, advoutlooklist

Werbung & Infos:

sevdesk Online-Buchhaltung sevdesk Angebot – Online-Buchhaltung 50% günstiger, 12- und 24 Monate, kostenloses eBook E-Rechnungen

Bei sevdesk kann man aktuell  wieder über diese Angebotsseite 50% sparen, wobei es 50% Rabatt sowohl bei 24 Monaten Laufzeit als auch bei 12 Monaten gibt. Der Rabatt gilt für alle sevdesk Tarife von sevdesk Rechnung bis sevdesk Buchhaltung Pro – Plus: kostenloses eBook zu E-Rechnungen.


Aktuelles Bitdefender Angebot


Verwandte Themen: