TDBrSpeedButton = class(TCustomDBrSpeedButton); TCustomDBrSpeedButton = class(TrSpeedButton) | ||
TrSpeedButton, но умеющий выполнять действия с данными и автоматически изменяющий свое состояние (Enabled). Значение Enabled устанавливается в результате проверки условий, указанных в свойствах ControlNegative, ControlPositive, Negative, Positive, а также события OnActiveChanged. Состояние: Готов. | ||
Свойства | ||
ControlDataField: String | Поле ControlDataSource, значение которого используется для дополнительного управления свойством Enabled кнопки. | |
ControlDataSource: TDataSource | Источник данных, который может использоваться для дополнительного управления свойством Enabled кнопки. | |
ControlNegative: TrDBOptionSet | Набор условий, которые НЕ должны выполняться для того, чтобы Enabled установилось в True. Проверяется только по отношению к ControlDataSource и ControlDataField. | |
ControlPositive: TrDBOptionSet | Набор условий, которые должны выполняться для того, чтобы Enabled установилось в True. Проверяется только по отношению к ControlDataSource и ControlDataField. | |
DataField: String | Поле DataSource, значение которого используется для управления свойством Enabled кнопки, а также на него направлено действие (только tbaNull). | |
DataSource: TDataSource | Источник данных, который используется для управления свойством Enabled кнопки, а также на него направлено действие. | |
KindAction: TrDBAction | Действие, выполняемое по нажатию кнопки. Ему соответствует набор условий для Negative и Positive, а также GlyphResource, Hint и ShortCuts. | |
Negative: TrDBOptionSet | Набор условий, которые НЕ должны выполняться для того, чтобы Enabled установилось в True. Проверяется только по отношению к DataSource и DataField. | |
Positive: TrDBOptionSet | Набор условий, которые должны выполняться для того, чтобы Enabled установилось в True. Проверяется только по отношению к DataSource и DataField. | |
Field: TField | Поле, соответствующее DataField | |
ControlField: TField | Поле, соответствующее ControlDataField | |
События | ||
OnAfterAction: TNotifyEvent | Вызывается после выполнения действия. | |
OnActiveChanged: TOnActiveChanged; TOnActiveChanged = procedure (Sender: TObject; DataLink: TFieldDataLink; var SetEnabled: Boolean) | Для задания дополнительных условий установки Enabled. | |
Метод ActiveChanged | Принудительный вызов проверок для установки свойства Enabled. |
TDBNULLSpeedButton = class(TCustomDBrSpeedButton) |
Кнопка, по нажатию которой полю присваивается значение NULL. Это просто TDBrSpeedButton, у которого KindAction := tbaNULL. Состояние: Готов. |
см. здесь |
TDBrBitBtn = class(TCustomDBrBitBtn); TCustomDBrBitBtn = class(TCustomRBitBtn) |
TrBitBtn, но умеющий выполнять действия с данными и автоматически изменяющий свое состояние (Enabled). Аналогична TDBrSpeedButton. Состояние: Готов. |
см. здесь |
TDBNULLButton = class(TCustomDBrBitBtn) |
Кнопка, по нажатию которой полю присваивается значение NULL. Это просто TDBrBitBtn, у которого KindAction := tbaNULL. Состояние: Готов. |
см. здесь |
TDBSwitchButton = class(TCustomDBrBitBtn); TCustomDBrSpeedButton = class(TrSpeedButton) | ||
Кнопка для редактирования полей, имеющих дискретные значения (как в TDBRadioGroup, только TDBSwitchButton - это кнопка, имеющая для каждого значения еще и картинку). Рекомендуется использовать при недостатке места на форме или при отсутствии надписей около каждого поля (типа галочек в табличке). При последовательном нажатии на кнопку у нее меняется картинка и надпись, а у поля DataField - значение. Состояние: Готов. | ||
Свойства | ||
Captions: TStrings | Надписи на кнопке для каждого значения | |
DataField: string | Изменяемое поле из DataSource | |
DataSource: TDataSource | Источник данных | |
Glyphs: TImageList | Картинка для каждого значения | |
NULLisZero: Boolean | Если True, то количество элементов в Captions, Glyphs и Values должно быть увеличено на 1. Нулевой элемент в этом случае используется для значения NULL. | |
ReadOnly: Boolean | Если True, то только просмотр. | |
Values: TStrings | Возможные значения DataField | |
Position: Integer | Текущий индекс |
TDBStaticText = class(TrCustomLabel) | ||
Компонент типа TDBLabel, но с расширенными визуальными возможностями. Состояние: Готов. | ||
Свойства | ||
Field: TField (R/O) | Поле, из которого берется значение для показа | |
DataField: String | Имя поля, из которого берется значение для показа | |
DataSource: TDataSource | Источник данных |
TrDBConnect = class(TrCustomConnect) | ||
Подключение к базе данных через BDE с диалогом или без. Состояние: Готов. | ||
Свойства | ||
Alias: string | Аналог Resource | |
AliasEnabled: Boolean | Аналог ResourceEnabled | |
Database: TDatabase | Компонент , который подключаем к базе данных. | |
Drivers: string | Список драйверов BDE, разделенных ";". Только псевдонимы этих типов можно будет выбрать в форме диалога. |
TDictionaryMgr = class(TComponent) | ||
Позволяет привязывать деревья, построенные из иерархически связанных записей наборов данных, к узлам первого уровня TTreeView. Также позволяет управлять источником данных DataSource при перемещении по узлам дерева. Состояние: Готов. Будет перерабатываться. | ||
Свойства | ||
ActiveItem: TDictionaryItem | Текущий экземпляр класса TDictionaryItem | |
DataSource: TDataSource | Источник данных, в который подставляються ConnectedDataSet или RootDataSet из ActiveItem. | |
Index: Integer | Текущий индекс в массиве Item | |
MgrOwner: TDictionaryOwner; TDictionaryOwner = TTreeView | Дерево, в котором строяться узлы | |
NodeProxies: TList | Список экземпляров класса TDictionaryItem | |
Count: Integer (R/O) | Количество узлов в NodeProxies | |
Item[Index: Integer]: TDictionaryItem (R/O) | Массив экземпляров класса TDictionaryItem | |
NodeCount: Integer (R/O) | Количество узлов в дереве | |
События | ||
AfterItemChange: TDictItemChangeEvent; TDictItemChangeEvent = procedure(Item: TDictionaryItem) | Происходит после изменения ActiveItem. | |
BeforeItemChange: TDictItemChangeEvent | Происходит перед изменением ActiveItem. | |
Методы | ||
function GetUniqueName(Component: TComponent): String | Возвращает уникальное имя. | |
function IndexByItem(Item: TDictionaryItem): Integer | Индекс в списке NodeProxies. -1, если не найден. | |
function ItemByNode(Node: TTreeNode): TDictionaryItem | Находит DictionaryItem по узлу дерева. nil, если не найдено. | |
function NodeByName(Value: String): TTreeNode | Поиск узла по имени. nil, если не найдено. | |
procedure Refresh | Обновить все узлы дерева. | |
procedure RefreshItem(Item: TDictionaryItem) | Обновить узел дерева связанный с Item. | |
procedure Resync | Синхронизация дерева и компонента. | |
procedure SetItemDataSet(Value: TDataSet) | Метод, устанавливающий DataSource.DataSet. |
TDictionaryItem = class(TComponent) | ||
Класс, который связывает узел TTreeView с TDictionaryMgr. Состояние: Готов. Будет перерабатываться. | ||
Свойства | ||
ConnectedDataSet: TDataSet | Набор данных, который устанавливается у ItemOwner.DataSource. | |
ConnectedFieldName: String | Имя поля из ConnectedDataSet, на значение которого накладывается фильтр при перемещении по дочерним узлам. | |
DataSet: TDBDataSet | Набор данных, на основе которого строятся узлы дерева | |
DisplayFieldName: String | Имя поля из DataSet, значение которого выводится в качестве текста узла дерева | |
MaxLevel: Integer | Максимальный уровень вложенности дерева. 0 - не строится, 1 - один уровень, -1 - без ограничения (для иерархических списков). | |
NodeImageIndex: TImageIndex; TImageIndex = Integer | Индекс картинки для построенных узлов дерева | |
NodeName: String | Текст узла дерева, который является главным для экземпляра класса | |
NodeSelectedIndex: TImageIndex | Индекс картинки выбранного узла дерева | |
NodeStateIndex: TImageIndex | Индекс картинки для статуса узла дерева | |
OwnerFieldName: String | Имя поля из DataSet, указывающее на предка. Считается, что OwnerField потомка указывает на поле ParentField предка. | |
OwnerFilter: String | Фильтр, дополнительно накладываемый на DataSet | |
ParentFieldName: String | Имя поля из DataSet, значение которого используется для построения дерева. Чаще всего, это ключевое поле из DataSet. | |
RootDataSet: TDataSet | Набор данных, который устанавливается в ItemOwner.DataSource, если выбран RootNode. | |
SourceFieldName: String | Имя поля из DataSet, значение которого подставляется в выражение фильтра для ConnectedDataSet. Должно соответствовать полю SourceField из ConnectedDataSet. | |
ConnectedField: TField (R/O) | Поле из ConnectedDataSet, на значение которого накладывается фильтр | |
DataBase: TDataBase (R/O) | База данных | |
DisplayField: TField (R/O) | Поле из DataSet, значение которого выводится в качестве текста узла дерева. | |
ItemOwner: TDictionaryMgr (R/O) | Компонент TDictionaryMgr, который является владельцем экземпляра класса TDictionaryItem. | |
OwnerField: TField (R/O) | Поле из DataSet, указывающее на предка. Считается, что OwnerField потомка указывает на поле ParentField предка. | |
ParentField: TField (R/O) | Поле из DataSet, значение которого используется для построения дерева. Чаще всего, это ключевое поле из DataSet. | |
RootNode: TTreeNode (R/O) | Этот узел является главным и в него строится узлы дерева. | |
SourceField: TField (R/O) | Поле из DataSet, значение которого подставляется в выражение фильтра для ConnectedDataSet. Должно соответствовать полю SourceField из ConnectedDataSet. | |
TreeView: TTreeView (R/O) | Дерево, которое определено в связанном TDictionaryMgr. | |
События | ||
OnGetDisplayString: TGetDisplayStringEvent; TGetDisplayStringEvent = procedure(DataSet: TDataSet; DisplayField: TField; var Text: String) | Вызывается, когда строится текст для узла. | |
OnSetConnectedFilter: TSetConnectedFilterEvent; TSetConnectedFilterEvent = procedure (DataSet: TDataSet; ConnectedField: TField; SourceField: TField; var Filter: String) | Вызывается при формировании фильтра на ConnectedDataSet. | |
OnSetDictFilter: TSetDictFilterEvent; TSetDictFilterEvent = procedure (DataSet: TDataSet; ParentField: TField; OwnerField: TField; Node: TTreeNode; var Filter: String) | Вызывается при формировании фильтра на DataSet. | |
OnSetNodeImageIndex: TSetImageIndexEvent; TSetImageIndexEvent = procedure(DataSet: TDataSet; Node: TTreeNode) | Для выбора картинки узла. | |
Методы | ||
function HasParent: Boolean | Фунция возвращает True, если узел определен в дереве и является родителем, в противном случае False. | |
function IsConnectedTo(DataSet: TDataSet): Boolean | Возвращает True, если DataSet является ConnectedDataSet'ом, иначе False. | |
function IsLinkedTo(DataSet: TDataSet): Boolean | Возвращает True, если DataSet является DictDataSet'ом, иначе False. | |
function IsRootNode(Node: TTreeNode): Boolean | Возвращает True, если узел определен в дереве и является узлом первого уровня (определен в дереве в Design-time). | |
function IsRootTo(DataSet: TDataSet): Boolean | Возвращает True, если DataSet является RootDataSet'ом, иначе False. | |
procedure RefreshNode | Обновить текущий узел. |
TrDBLookupTree = class(TrCustomDBTreeView) | ||
Компонент , аналогичный TDBLookupListBox, но для выбора из иерархических наборов данных. Вместо простого списка - дерево. Состояние: Готов. | ||
Свойства | ||
DataField: String | Имя поля из DataSource, куда сохраняется результат выбора из поля LookupField. | |
DataSource: TDataSource | Источник данных для сохранения выбранного значения. | |
LookupDisplay: String | Имена полей, разделеные ";", значения которых выводится в тексте узла. | |
LookupField: String | Имя поля, по которому производится связывание LookupSource с DataSource. Соответствует DataField. | |
LookupSource: TDataSource | Связанный DataSource, из которого берутся данные для построения дерева. |
TrDBLookupComboTree = class(TCustomComboEdit) | ||
Компонент , аналогичная TRxDBLookupCombo, но для выбора из иерархических наборов данных. Вместо простого выпадающего списка - дерево. Состояние: Готов. | ||
Свойства | ||
CheckKey: TShortCut | Сочетание клавиш, которое используется для отметки одной записи. Например, Ctrl-Space. | |
CheckShift: TShiftState | Какую управляющую клавишу использовать для отметки записей клавишами Up / Down. Например, Ctrl-Up/Down. | |
ChildIndex: Integer | Индекс картинки в Images для узла, не имеющего потомков. | |
ChildrenField: String | Имя поля, значение которого используется для построения связи родитель-потомок. Указывает на родителя узла. | |
ChildSelected: Integer | Индекс картинки в Images для узла, не имеющего потомков, если он выбран. | |
DataField: String | Имя поля из DataSource, куда сохраняется результат выбора из поля LookupField. | |
DataSource: TDataSource | Источник данных для сохранения выбранного значения. | |
DisplayEmpty: String | Строка, которая отображается, если ничего не выбрано. | |
DropDownCount: Integer | Количество строк в выпадающем списке | |
DropDownWidth: Integer | Ширина выпадающего списка | |
Images: TImageList | Компонент TImageList, из которой берутся картинки для отображения в дереве. | |
LookupDisplay: String | см. здесь | |
LookupField: String | ||
LookupSource: TDataSource | ||
MultiSelect: TrTreeMultiSelect | параметры мультивыбора, см. здесь | |
ParentField: String | см. здесь | |
ParentIndex: Integer | ||
ParentSelected: Integer | ||
ReadOnly: Boolean | Если True, то только просмотр. | |
KeyValue: Variant | Значение поля LookupField в текущем узле дерева | |
Value: String | Значение поля LookupField в текущем узле дерева | |
События | ||
OnCheckListChange: TTreeCheckListChange; TTreeCheckListChange = procedure(Sender: TObject; Item: Variant; Action: TVarListAction) of object; | Вызывается после отметки записи. | |
OnCheckListChanging: TTreeCheckListChangingEvent; TTreeCheckListChangingEvent = procedure(Sender: TObject; Item: Variant; Action: TVarListAction; var AllowChange: Boolean) of object; | Вызывается перед отметкой записи. Можно запретить изменение (AllowChange := False). | |
OnGetImageIndex: TTVExpandedEvent; | Для выбора индекса картинки из Images. | |
OnGetSelectedIndex: TTVExpandedEvent; | Для выбора индекса картинки для выбранного узла из Images. |
TrDBComboEdit = class(TRxDBComboEdit) | ||
TRxDBСomboEdit со свойствами, аналогичными TrComboEdit. Состояние: Готов. | ||
Свойства | ||
Align: TAlign | Выравнивание. Поднято из TControl. | |
GlyphResKind: TBitmapResKind | см. здесь | |
GlyphResource: string |