Delphi, VirtualStringTree - clases (objetos) en lugar de registros

Necesito usar una clase en lugar de un registro para el nodo VirtualStringTree.

¿Debo declararlo estándar (pero en este caso, complicado) de esta manera:

PNode = ^TNode;
TNode = record
 obj: TMyObject;
end;
//..
var
 fNd: PNode;
begin
fNd:= vstTree.getNodeData(vstTree.AddChild(nil));
fNd.obj:= TMyObject.Create; 
//..

o debería usar directamenteTMyObject? ¡¿Si es así, cómo?! ¿Qué tal asignar (construir) el objeto y liberarlo?

Gracias de antemano m.

Respuestas a la pregunta(3)

Su respuesta a la pregunta