anchor.diff:    searchBox.Left := FColumnLeft;
     searchBox.Top := FColumnTop + 1;
     searchBox.OnKeyDown := HandleSearchBoxKeyDown;
  +  searchBox.OnKeyUp := HandleSearchBoxKeyUp;
     searchBox.OnInvokeSearch := StartSearch;
   
     vt := TVirtualStringTree.Create(FForm);
  
positive.code:     timer := nil;
      if assigned(listBoxData) then
        timer := listBoxData.SearchTimer;
      if assigned(treeData) then
        timer := treeData.SearchTimer;
      if assigned(timer) then begin
        timer.Enabled := false;
  
negative.code:       shift: TShiftState);
      procedure HandleSearchBoxKeyDown(Sender: TObject; var key: word;
        shift: TShiftState);
      procedure HandleSearchBoxKeyUp(Sender: TObject; var key: word;
        shift: TShiftState);
      procedure HandleSearchBoxTimer(Sender: TObject);
      procedure HandleVTFocusChanged(Sender: TBaseVirtualTree; node: PVirtualNode;
        column: TColumnIndex);
  