![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Связь компонента с DataSet [D5, D7]
Ega23 © (2005-05-23 10:12:00)Пробую писать свой DBTree-компонент.
Не совсем понятно, каким образом происходит связывание события пользователя (изменил текущий узел) с курсором привязанного DataSet'а.
Просмотр исходников TDBGrid дал подозрение, что это как-то связано с объектом TDataLink, но что-то не сумел найти, в каком именно месте привязанному DataSet'у даётся команда на изменение позиции курсора.
Подскажите, какой это метод (на примере TDBGrid)?
Ega23 (2005-05-23 15:19:00) [1]Ага, спасибо.
Igorek (2005-05-23 14:56:00) [2]Ega23 © (23.05.05 10:12)
см.
procedure TCustomDBGrid.MouseDown(Button: TMouseButton; Shift: TShiftState;
X, Y: Integer);
procedure TCustomDBGrid.KeyDown(var Key: Word; Shift: TShiftState);
а оттуда например
function TDataLink.MoveBy(Distance: Integer): Integer;
begin
Result := DataSet.MoveBy(Distance);
end;
-=XP=- (2005-05-23 13:07:00) [3]Обработчики событий TFieldDataLink: OnActiveChange, OnDataChange, OnEditingChange, OnUpdateData.
Из справки:
OnUpdateData
Occurs when it is time to post any pending changes to the dataset.
property OnUpdateData: TNotifyEvent;
Description: Write an OnUpdateData event handler to write the data in the representation of the field to the database record. Posting the data from within OnUpdateData does not trigger a call to OnDataChange.