Einzelnen Beitrag anzeigen

Assertor

Registriert seit: 4. Feb 2006
Ort: Hamburg
1.296 Beiträge
 
Turbo C++
 
#3

Re: Hilfe zu VirtualTreeview Rootnodecount

  Alt 8. Nov 2007, 16:05
Hallo generic,

danke für die Antwort.

Zitat von generic:
Bin gerade dabei ein Applicationserver zu schreiben, welcher auf einen Client einen VST aktuallisieren muss. (datenändern, hinzufügen und löschen)
Soweit, etwa gleiche Vorgaben.

Zitat von generic:
Der Server erzeugt von seinen Daten eine Art Diff.
Dieses schickt er zum Client.
Der Client durchläuft dann jeden Diffdatensatz, versucht dabei einen Knoten mit der gleich ID zu finden.
Dann ändert er die Daten oder löscht den Knoten.
Ist kein Knoten da, ist es ein neuer Datensatz.
Das brauche ich nicht. Die Daten kommen sequentiell, d.h. kenne ich die aktuelle RecordCount Größe, weiß ich, welche fehlen.

Ich teste gerade einen anderen Lösungsansatz, bekomme aber hier mit dem OnInitNode Probleme.

Wie kann man das anders machen:
Delphi-Quellcode:
var
  Data: PMyData;
begin
  inherited;
  Data := Sender.GetNodeData(Node);
  Initialize(Data^);
  Data.ID := MeineTabelle.FieldByName('MeineID').AsInteger;
  Data.Text := MeineTabelle.FieldByName('MeinText').AsWideString;
  if not MeineTabelle.Eof then // <- das möchte ich ablösen
    MeineTabelle.Next; // <- "" - ""
end;
Ich habe versucht, einfach MeineTabelle.RecNo auf Node.Index zu setzen (mit Größenprüfung) und Eof/Next wegzulassen. Dann erhalte ich bei Vergrößerung des RootNodeCount von z.B. 2000 auf 2500 aber nur gleiche Werte von 2001 bis 2500.

Ideen? Ich habe schon im VTV Tut, den DB Beispielen (Extensive und Basic), den Yahoo Archiven und bei DP gesucht. Aber diesen Ansatz scheint keiner vorher mal gemacht zu haben...

Gruß winkel79
Frederik
  Mit Zitat antworten Zitat