-
MY PROJECTS
-
Recent Posts
- SQL.How can you compare two nullable values safely, and how does IS DISTINCT FROM differ from <>?
- SQL.How are NULL values ordered by ORDER BY, how do defaults differ between databases, and how can you control their placement?
- SQL.How does NULL propagate through arithmetic expressions, and how can COALESCE and NULLIF help handle missing values and division by zero?
- SQL.How does NULL affect join conditions, and why can filtering the right-hand table in WHERE remove unmatched rows from a LEFT JOIN?
- SQL.How do GROUP BY and DISTINCT treat NULL values, even though NULL = NULL evaluates to UNKNOWN?
- SQL.How do aggregate functions handle NULL, and what is the difference between COUNT(*), COUNT(column), and COUNT(DISTINCT column)?
- SQL.How does NULL affect IN and NOT IN, and why can NOT EXISTS be a safer choice when a subquery returns nullable values?
- SQL.How do WHERE, HAVING, and CHECK constraints treat conditions that evaluate to UNKNOWN?
- SQL.Why do column = NULL and column <> NULL not work as expected, and when should you use IS NULL and IS NOT NULL?
- SQL.What is SQL’s three-valued logic (TRUE, FALSE, UNKNOWN), and how do AND, OR, and NOT behave with UNKNOWN?
- ChromeDevTools.Watch all failed requests
- SQL.What are domain types (or constraints on data types), and how do they help enforce data correctness?
- SQL.How does SQL handle comparisons between different data types (for example, string vs number), and why is this dangerous?
- SQL.What is the difference between DATE, TIME, TIMESTAMP, and TIMESTAMPTZ, and which one should be used for business events?
- SQL.How do numeric types like INTEGER, BIGINT, DECIMAL, and FLOAT differ in terms of precision and use cases?
- SQL.What problems can arise from implicit type casting in SQL, and how can it affect indexes?
- SQL.How does NULL differ from 0, an empty string, or FALSE in SQL?
- SQL.What is the difference between CHAR, VARCHAR, and TEXT, and when would you choose each?
- SQL.What is MVCC ?
- SQL.What is AutoVacuum Postgres ?
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)
- Регулярные выражения
- Тестирование приложений
Category Archives: Компонентостроение
Delphi.DBTreeView своими руками. Редактирование имени узла
В главном модуле компонента вставка узла выглядит так
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
//----------------------------Редактирование названия узла procedure TDBTreeView.EditNodeText; var EditNodeText:TEditNodeText; NewName:string; begin if not Assigned(Self.Selected) then exit; try Screen.Cursor:=crSQLWait; //Do_Something if not Assigned(Self.Selected) then exit; EditNodeText:=TEditNodeText.Create(Self); EditNodeText.DBTreeView:=Self; // << Ссылка на дерево if InputQuery('Введите новое название','',NewName)=true then begin if NewName='' then begin FreeAndNil(EditNodeText); exit; end else EditNodeText.UpdateNodeText(NewName); end; |
Posted in Delphi, Компонентостроение
Comments Off on Delphi.DBTreeView своими руками. Редактирование имени узла
Delphi.DBTreeView своими руками. Вставка папки, файла, произвольного узла
Здесь ничего сложного. Разберу на примере вставки папок и файлов, это более общий случай. При вставке папок и файлов основную работу делают вот эти 2 метода.
|
1 2 3 4 |
function InsertFolderOrFileInDB( idParent,index: Integer; name: string; DBTreeView: TDBTreeView; IsFolder: boolean): integer; procedure InsertFolderOrFileInTree(DBTreeView: TDBTreeView; IsFolderLocalVar:boolean; name:string); |
Остальные методы дополнительные. Сама вставка осуществляется в главном модуле компонента следующим образом. Рассмотрим на … Continue reading
Posted in Delphi, Компонентостроение
Comments Off on Delphi.DBTreeView своими руками. Вставка папки, файла, произвольного узла
DELPHI. DBTreeView своими руками. Update. Динамическая подгрузка веточек
Для ускорения DBTreeView в данном алгоритме реализована так называемая динамическая подгрузка веточек. Суть в том, что в сначала загружаются все узлы нулевого уровня. Потом, при каждом Expanding узла, если у него есть потомки – дозагружаются его потомки первого уровня и … Continue reading
Posted in Delphi, Компонентостроение
Comments Off on DELPHI. DBTreeView своими руками. Update. Динамическая подгрузка веточек
DELPHI. DBTreeView своими руками. Третья волна
Введение И вот она, третья, волна! Я никогда ранее не разрабатывал компоненты, и скажу, что опыт это крайне ценный для становления Delphi программиста. Многие вещи соединяются в голове и весь наработанный ранее опыт играет свою роль. Я работал над DBTreeView … Continue reading
Posted in Delphi, Компонентостроение
Comments Off on DELPHI. DBTreeView своими руками. Третья волна