/ Forside / Teknologi / Udvikling / Delphi/Pascal / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Delphi/Pascal
#NavnPoint
oldwiking 603
jrossing 525
rpje 520
EXTERMINA.. 500
gandalf 460
gubi 270
DJ_Puden 250
PARKENSS 230
technet 210
10  jdjespers.. 200
Hvordan "fanges" opdatering af array-eleme~
Fra : Thomas Holmgren


Dato : 08-03-04 10:49

Hej Alle!

Jeg har lavet min egen klasse, som arver fra TObjectList. Der skal ske
speciel processering når objekter i min liste manipuleres (læses, indsættes,
ændres og slettes). Objekter tilgås udelukkende gennem en array-property
("Items", som den hedder i TObjectList). Jeg har lavet nye get og
set-metoder, så jeg kan "fange" når objekter læses og indsættes i listen.
MEN, hvordan i alverden finder jeg ud af at et objekt opdateres? Jeg tænker
på en opdatering på følgende måde:

minListe.Items[i].Att := 5;

Hvordan "fanger" jeg - internt i min TObjectList-specialisering - at denne
opdatering foregår?

Da jeg laver forskellige former for synkronisering er det vigtigt jeg
"fanger" opdateringen af objektet MENS den sker, og ikke bagefter.


--
Mvh.
Thomas Holmgren



 
 
David Konrad (08-03-2004)
Kommentar
Fra : David Konrad


Dato : 08-03-04 11:09

"Thomas Holmgren" <thm@regnecentralen.dk> wrote in message
news:c2hfjb$2ag7$1@news.cybercity.dk...
> Hej Alle!
>
> Jeg har lavet min egen klasse, som arver fra TObjectList. Der skal ske
> speciel processering når objekter i min liste manipuleres (læses,
indsættes,
> ændres og slettes). Objekter tilgås udelukkende gennem en array-property
> ("Items", som den hedder i TObjectList). Jeg har lavet nye get og
> set-metoder, så jeg kan "fange" når objekter læses og indsættes i listen.
> MEN, hvordan i alverden finder jeg ud af at et objekt opdateres? Jeg
tænker
> på en opdatering på følgende måde:
>
> minListe.Items[i].Att := 5;

Prøv at sætte et breakpoint i minListe.SetItems() (hvis set-metoden da
hedder det) og jeg er ganske sikker på, at du vil se, at du allerede
"fanger" opdateringen. Getset'er metoderne bruges netop til den type
formål - i et andet scenarie kunne det være at værdierne som kommer ind og
ud af items-propertien skulle konverteres, og også her ville du selvfølgelig
fange hvert et kald. Set og Get-metoderne kaldes naturligvis også, selvom du
kalder properties på objektet der er property-typen. Selvom du kalder feks
property.object.height bliver metoderne setObject eller getObject stadig
kaldt implicit.

> Hvordan "fanger" jeg - internt i min TObjectList-specialisering - at denne
> opdatering foregår?
>
> Da jeg laver forskellige former for synkronisering er det vigtigt jeg
> "fanger" opdateringen af objektet MENS den sker, og ikke bagefter.

Du får det ovenikøbet inden, og kan så selv afgøre om du vil gennemføre
opdateringen eller cancle den.




Søg
Reklame
Statistik
Spørgsmål : 177580
Tips : 31968
Nyheder : 719565
Indlæg : 6409080
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste