-
MY PROJECTS
-
Recent Posts
- SpringBoot.Making our first starter and autoconfiguration
- Spring. Creating main annotation to start business logic
- Spring.Reading from properties file
- Spring.How to define spring version inside springBoot ?
- SpringBoot App inside Docker
- Kafka.FirstExperience
- Docker.MySql and Lost connection to MySQL server at ‘reading initial communication packet’, system error: 0
- Gradle.Tips
- Spring.AppConfig
- Leetcode.Best-time-to-buy-and-sell-stock
- LeetCode.ClimbStairs.Fibbonacci
- Leetcode.Roman-to-integer
- LeetCode.Palindrome-number
- Java.DesignPatterns.Lightweight
- Java.DesignPatterns.Proxy
- Java.DesignPatterns.Facade
- Java.DesignPatterns.Composite
- Java.DesignPatterns.Bridge
- Java. Strange OOP thing
- Java.Classpath
Categories
- Aptana
- Azure
- C#
- DataSnap
- DBExpress
- Delphi
- Delphi и сети
- Delphi. Язык программирования
- ExtJS
- FastReport
- FireDAC
- FireMonkey
- GIT
- ICS
- IDE
- IIS
- Indy
- InnoSetup
- javascript
- jQuery
- JSON
- LiveBindings
- MSHTML
- MySQL
- PHP
- REST
- Ribbons
- SMS
- SQL инструкции
- SVN
- TRichView
- UniGui
- WebBroker
- WinAPI
- Windows
- Алгоритмы
- Без рубрики
- Деревья
- Ищу ответ
- Компонентостроение
- Мои компоненты
- Начальный уровень
- Обработка исключений
- Парсинг
- Потоки(Threads)
- Регулярные выражения
- Тестирование приложений
Daily Archives: 05.04.2016
Delphi. Иерархические данные. DBTreeView своими руками. Приведение CheckBoxes в нормальное состояние
Пока не нашел свойство DisplayRect у TTreeNode, не знал как быть с чекбоксами, а то поставить то я их поставил, а вот работали они не совсем адекватно. То есть при нажатии на текст, скажем – нажимались и чекбоксы, а мне нужно было … Continue reading
Delphi. Иерархические данные. DBTreeView своими руками. Запоминание свернутости
Потихоньку подбираюсь к динамической загрузке веточек, по нажатию на узел, если в нём есть дети, он будет раскрываться. Но это в следующих статьях, сейчас простое запоминание свёрнутости узлов через базу. Для этого я добавил поле IsExpanded Поле Integer, по правильному … Continue reading
Posted in Delphi
Comments Off on Delphi. Иерархические данные. DBTreeView своими руками. Запоминание свернутости
Delphi. Иерархические данные. DBTreeView своими руками. Удаляем несколько узлов с помощью Checkboxes
В данной статье посмотрим на алгоритм удаления при помощи Checkboxes. Суть такая же, при удалении узла нужно удалить всех его детей. Но реализация немного другая, отличная от той, где мы удаляли через Selection. Алгоритм, прямо скажу, не быстрый, но рабочий. … Continue reading
Delphi. TreeView. Способы обхода дерева
Способов обхода дерева – огромное количество, я приведу здесь самые простые. Обход всего дерева от начала до конца
1 2 3 4 5 6 7 8 |
... Node:=TreeView.Items.GetFirstNode; repeat // DoSomething with Tree for Example // Node.Text:='Was here during travesing'; Node:=Node.GetNext; until not Assigned(Node) ; ... |
Обход в глубину узла 1
1 2 3 4 5 6 7 8 |
Procedure TMainForm.WalkParentAndAllChildren (Node:TTreeNode); var i:integer; begin memo1.Lines.Add(Node.Text); for i := 0 to Node.Count-1 do WalkParentAndAllChildren(Node[i]); // Recurisively goes all children end; |
Данная процедура обходит родителя и всех детей – рекурсивно. Вот ссылка на сайт, где взял … Continue reading
Posted in Delphi, Без рубрики, Деревья
Comments Off on Delphi. TreeView. Способы обхода дерева