In diesem Fall würde ich einfach das OnChecking Event implementieren und den Parameter
Allowed
(immer) auf
false
stellen.
Delphi-Quellcode:
procedure TfrmMain.vstChecking(Sender: TBaseVirtualTree; Node: PVirtualNode; var NewState: TCheckState;
var Allowed: Boolean);
begin
Allowed := False;
end;