Компонент delphi ValueListEditor представляет собой сетку для редактирования списков строк. Эта сетка содержит следующие заголовки: Название/Значение (Name=Value). Пример такого списка можно встретить в реестре Windows. Эта сетка содержит 2 столбца первый для названия, а второй для значения. По умолчанию, столбцы имеют следующие названия Key – первый столбец и Value – второй, которые с легкостью можете изменять с помощью свойства TitleCaptions. Также при необходимости строку с заголовками можно убрать совсем, обратившись к свойству DisplayOptions. установив значение подсвойства doColumnTitles равным False. Если необходимо то пользователю можно запретить выполнять какие либо действия с первым столбцом (как это сделано в реестре Windows) обратившись к свойству KeyOptions которое позволяет разрешить или запретить: добавлять, удалять и редактировать записи первого столбца, так же с помощью этого свойства можно сделать записи уникальными.
Свойства TValueListEditor
Cells[ACol, ARow: Integer] | Открывает доступ к содержанию ячейки, лежащей на пересечении ACol(столбца) с ARow(строкой) нумерация начинается с нуля |
ColCount | количество столбцов |
DisplayOption | Имеет следующие подсвойства• doColumnTitles –если True то содержит заголовки столбцов • doAutoColResize — если True то автоматически меняет ширину столбцов при изменении размеров компонента ValueListEditor; • doKeyColFixed – если true, то ширина первого столбца не изменяется при изменении размеров. |
DropDownRows | максимальное количество строк показ которых не вызывает появлением полосы прокрутки |
KeyOption | Имеет следующие подсвойства• keyEdit – если False то пользователю запрешено изменять первый столбце;• keyAdd – если True то пользователь может добавлять новую строку нажатием клавиши Insert (требует включенный keyEdit);
• keyDelete –если True то пользователь может уничтожить выделенную строку нажатием клавиши Delete; • keyUnique – если True то названия вводимых пользователем имен будут уникальными. |
RowCount | Содержит количество строк. |
Strings | Содержит строки списка. |
TitleCaptions | Содержит заголовки столбцов. |
Рассмотрим небольшой код для реализации выпадающего списка значений
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | procedure TForm10.FormActivate(Sender: TObject); begin ValueListEditor1.ItemProps[1].EditStyle := esPickList; end; procedure TForm10.ValueListEditor1GetPickList(Sender: TObject; const KeyName: string; Values: TStrings); begin //Содержимое списка доступно через параметр Values Values.Add('1 значение'); Values.Add('2 значение'); Values.Add('3 значение'); Values.Add('4 значение '); end; |
Для очистки TValueListEditor примените следующий код
1 2 | while ValueListEditor1.Strings.Count > 0 do ValueListEditor1.DeleteRow(1); |