Настройка заголовка для узлов списка виртуальных деревьев - PullRequest
2 голосов
/ 02 марта 2012

Я не могу понять процесс, описанный в документации.В нем сказано использовать событие:

procedure TForm1.VSTGetText(Sender: TBaseVirtualTree; Node: PVirtualNode;
                Column: Integer; TextType: TVSTTextType; var CellText: WideString);
var
    Data: PTreeData;
begin
   Data:=VST.GetNodeData(Node);
   CellText := Data^.FCaption;
end;

Как мне это сделать?Я не могу переопределить это просто так.Когда я дважды щелкаю по списку деревьев OnGetTextEvent, это вызывает у меня исключение: «Свойство и метод несовместимы»

Ответы [ 2 ]

3 голосов
/ 02 марта 2012

Вы не упоминаете версию Delphi и VirtualTreeview, но я полагаю, это из-за параметра CellText: WideString - теперь он должен иметь тип string после того, как UnicodeString стал типом строки по умолчанию в Delphi. IOW изменить его на

procedure TForm1.VSTGetText(Sender: TBaseVirtualTree; Node: PVirtualNode;
          Column: Integer; TextType: TVSTTextType; var CellText: string);
0 голосов
/ 05 марта 2012

Что-то не так с моим проектом.Я не уверен, что, потому что я воссоздал это.Теперь событие GetText работает правильно.Мой код выше работает.

...