TTreeView получить стринг по указателю - Free Pascal
Формулировка задачи:
Здравствуйте, я заполняю компонент ТТreeView следующим образом:
Как мне получить текст(string) по поинтеру(объекту), НО НЕ ПО ИНДЕКСУ! Спасибо )))
Node1:=Tree.Items.AddObject(nil, List.ValueFromIndex[k], Pointer(StrToInt(List.ValueFromIndex[k+1])) ); Node2:=Tree.Items.AddObject(nil, List.ValueFromIndex[k+6], Pointer(StrToInt(List.ValueFromIndex[k+7])) );
Решение задачи: «TTreeView получить стринг по указателю»
textual
Листинг программы
procedure TForm1.Button8Click(Sender: TObject); var node : TTreeNode; begin node := TreeView1.Items.FindNodeWithData(Pointer(StrToInt(Edit1.Text))); // в Edit1 пишем нужное число (из тех, которые добавлялись через AddObject) if(Assigned(node)) then ShowMessage(node.Text); end;
Объяснение кода листинга программы
- Объявлена переменная node типа TTreeNode.
- При нажатии кнопки Button8 происходит поиск узла в TreeView1 по данным, введённым в Edit1.
- Для поиска используется метод FindNodeWithData, в который передаётся указатель на число, полученное из Edit1.Text с помощью функции StrToInt.
- Если узел найден, то отображается сообщение с текстом узла.
- Если узел не найден, то ничего не происходит.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д