Nee, das war doch nix mit meiner Lösung, das macht wieder an anderen Stellen Probleme. Die einfachste und kürzeste Lösung ist dann doch eine minimalistische Windows-Botschaftsprozedur in dieser Art:
Delphi-Quellcode:
procedure TfrmTopics.TVNewWProc(var Msg:TMessage);
begin
if not(LockTreeview) then TVOrgWProc(Msg)
end;
Wenn LockTreeview=true, ist das Treeview tatsächlich taub, blind und stumm.
// EDIT - Ahhh, shit, so geht das auch nicht! Wenn in diesem Zustand ein anderes Fenster drüber war, wird nach dessen Verschieben das Treeview ja nicht neu gezeichnet. Also sind wir jetzt nach einem "kleinen Umweg" endlich bei Detlefs Lösung angekommen - ich hör' heute auf, mach' ja nur noch Unsinn