TValueListEditor - спеціалізований редактор рядків - Програмування від
Безпосереднім предком компонента є клас TCustomDrawGrid, тому багато його властивостей, методів і подій збігаються з описаними в п. 18.2.4 властивостями, методами та подіями компонента TStringGrid.
| property Cells[ACol, ARow: Integer]: String; | Відкриває доступ до вмісту осередку, що лежить на перетині стовпця ACol з рядком arow (нумерація стовпців та рядків починається з нуля) |
| property ColCount: Integer; | Містить кількість стовпців |
| type TDisplayOption = (doColumnTitles, doAutoColResize, doKeyColFixed) ; TDisplayOptions = set of TDisplayOption; property DisplayOptions: TDisplayOptions; | Властивість може включати такі значення: doColumnTitles - перший рядок містить заголовки стовпців, визначені властивістю TitleCaption, І не скролюється; doAutoColResize - пропонує автоматично змінювати ширину стовпців при зміні розмірів компонента; doKeyColFixed - якщо зазначено, ширина першого стовпця, що містить імена, не змінюється при зміні розмірів |
| property DropDownRows: Integer; | Вказує максимальну кількість рядків у списку можливих значень, показ яких не супроводжується появою смуги прокручування |
| property ItemProps[const KeyOrIndex: Variant]: TItemProp; | Складна властивість, що керує різними аспектами відображення значень (див. нижче) |
| type TKeyOption = (keyEdit, keyAdd, keyDelete, keyUnique) ; TKeyOptions = set of TDisplayOption; properties KeyOptions: TKeyOptions; | Керує можливою зміною списку: keyEdit – користувач може змінювати ім'я параметра (у першому стовпці); keyAdd - користувач може додавати нову пару ім'я-значеннянатисканням кнопки Insert (вимагає включення keyEdit); keyDelete -користувач може знищити виділену пару натисканням клавіші Delete; keyUnique - назви введених користувачем імен повинні бути унікальними |
| property Keys[Index: Integer]:String; | Відкриває доступ до назв значень за їх індексами |
| property RowCount: Integer; | Містить кількість рядків |
| property Strings: TStrings; | Містить рядки списку |
| property TitleCaptions: TStrings; | Містить заголовки стовпців |
| property Values[const Key:String]: String; | Відкриває доступ до значень за їх індексами |
![]() |
Властивість itemprops класу Titemprop має власні властивості:
Властивість PickList не призначена для програмного доступу. Щоб створити список можливих значень, що випадає, потрібно властивості ItemProp.EditStyle присвоїти значення esPickList і написати обробник події onGetpickList. Нехай, наприклад, перше значення має мати список, що випадає. Тоді потрібен такий код:
З наступними властивостями компонента аналогічні однойменним властивостям компонента TStringGrid (cm. П. 18.2.4): BorderStyle, Col, ColWidths, DefaultColWidth, DefaultDrawing, DefaultRowHeight, EditorMode, FixedColor, FixedCols, Grix tions, Row, RowHeights, ScrollBars, Selection, TabStops, TopRow, VisibleColCount,VisibleRowCount. function InsertRow(const KeyName,. "."alue: String; Append: Boolean) : Integer-procedure Refresh; function RestoreCurrentRow: Boolean;
Методи CellRect, MouseToCell І MouseCoord аналогічні однойменним методам компонентаTStringGrid (див. п. 18.2.4).
| property OnEditButtonClick: TNotifyEvent; | Виникає при натисканні на кнопці розкриття діалогового вікна редагування значення. Властивість ItemProps .EditStyle має містити значення esEllipse |
| type TGetPickListEvent = procedure (Sender: TObject; const KeyName: String; Values: TStrings)of object; property OnGetPickList: TGetPickListEvent; | Виникає при натисканні на кнопці розкриття списку можливих значень. Параметр KeyName містить ім'я рядка, в якому зроблено клацання. Обробник повинен заповнити можливими значеннями список Values. Властивість ItemProps. EditStyle має містити значення esPickList |
| property OnStringsChange: TNotifyEvent; | Виникає відразу після зміни імені або значення поточного рядка |
| property OnStringsChanging: TNotifyEvent; | Виникає безпосередньо перед зміною імені або значення поточного рядка |
| type TOnVal > | Виникає перед тим як фокус введення залишить комірку ACol, ARow. Оброблювач може перевірити нові значення KeyName та KeyValue та порушити виняток, якщо виправлення у рядку були помилковими |
З наступними подіями аналогічні однойменним подіям компонента TStringGrid: OnDrawCell, OnGetEditMask, OnGetEditText OnRowMoved, OnSelectCell, OnSetEditText, OnTopLeftChanged.
