Einzelnen Beitrag anzeigen

Benutzerbild von Mikescher
Mikescher

Registriert seit: 3. Jun 2008
Ort: Offenburg
265 Beiträge
 
Delphi 2009 Professional
 
#1

[VST] AV bei Doppelklick auf Header

  Alt 25. Jul 2010, 16:56
Hallo,

ich wollte mich mit dem VirtualStringTree auseinandersetzen, indem ich dieses Tutorial hier durchmache.

Ich habe jetzt also ein VST mit sichtbarem Header und 5 Columns. Bei dem Klick auf den Header werden die Einträge sortiert (wie beim Explorer).
Das Problem was ich jetzt jedoch habe ist das wenn mann doppelt auf den Header klickt eine AV produziert wird.
Und zwar an dieser Stelle:

Delphi-Quellcode:
  PTreeData = ^TTreeData;
  TTreeData = record
   Column :array[0..4] of String;
  end;

{...}

procedure TForm1.VSTCompareNodes(Sender: TBaseVirtualTree; Node1,
  Node2: PVirtualNode; Column: TColumnIndex; var Result: Integer);
var
  Data1: PTreeData;
  Data2: PTreeData;
begin
  Data1:=vst.GetNodeData(Node1);
  Data2:=vst.GetNodeData(Node2);
  if (not Assigned(Data1)) or (not Assigned(Data2)) then
    Result:=0
  else
    Result:=CompareText(Data1.Column[Column], Data2.Column[Column]); // < GENAU DA //
end;
Zum besseren Verständnis habe ich ein kleines Beispiel-projekt erstellt in dem man dieses Verhalten beobachten kann (siehe Anhang).

Vielen Dank im Vorraus an alle.
Mike
Angehängte Dateien
Dateityp: pas Unit1.pas (3,1 KB, 5x aufgerufen)
Dateityp: zip Projekt1.zip (405,5 KB, 6x aufgerufen)
Mike
Operation gelungen, Patient tot.

http://www.mikescher.com
  Mit Zitat antworten Zitat