Форум: "Базы";
Текущий архив: 2002.12.02;
Скачать: [xml.tar.bz2];
ВнизНаписание компонент и TDataLink Найти похожие ветки
← →
ton2 (2002-11-14 12:07) [0]Пишу свой компонент который содержит поле Edit в котором отображается номер текущей записи датасета, Label показывающий число записей в датасете и кнопки навигации. связываю мой новый компонент с датасетом через TDataLink. чтоб отловить момент когда изменяется положение курсора в датасете пытаюсь использовать DataSetChanged, вот так:
FDataLink := TDataLink.Create;
FDataLink.DataSetChanged:=DSChange;
где DSChange - моя процедура обработки события. когда пытаюсь откомпилировать - говорит DataSetChanged - необъявленый идентификатор хотя в TDataLink имеется этот метод, говорится в хелпе. если не через DataSetChanged как еще можно отловить изменение датасета?
← →
SaS13 (2002-11-14 12:10) [1]FDataLink := TDataLink.Create;
FDataLink. onDataSetChanged:=DSChange;
← →
ton2 (2002-11-14 12:16) [2]то же самое. Ощибка: onDataSetChanged - необъявленный идентификатор.
← →
ЮЮ (2002-11-14 12:24) [3]DataSetChanged - это метод TDatalink, а не Event;
← →
ton2 (2002-11-14 12:29) [4]как же тогда среагировать на изменение данных в датасете? неужели придется создавать класс производный от TDataLink и в нем переписывать метод DataSetChanged?
← →
SaS13 (2002-11-14 12:29) [5]ЮЮ © (14.11.02 12:24)
сорри,
даже не посмотрел :))
← →
SaS13 (2002-11-14 12:37) [6]2 ton2
tDataSet.AfterScroll не подойдет?
← →
ton2 (2002-11-14 12:40) [7]AfterScroll тоже пробовал и то же самое
← →
SaS13 (2002-11-14 12:45) [8]type
TForm1 = class(TForm)
...
procedure MyAfterScroll(DataSet: TDataSet);
..
end;
в теле:
Table1.onAfterScroll := MyAfterScroll;
← →
ЮЮ (2002-11-14 12:54) [9]>неужели придется создавать класс производный от TDataLink и в нем переписывать метод DataSetChanged?
Естественно. Посмотри например TGridDataLink.
Переопределенный метод
procedure TGridDataLink.DataSetChanged;
begin
FGrid.DataChanged;
FModified := False;
end;
позволяет при вызове этого метода провести некоторые действия внутри своего компонента и вызвать, при необходимости, обработчики событий уже своего компонента
procedure TCustomDBGrid.DataChanged;
begin
if not HandleAllocated then Exit;
UpdateRowCount;
UpdateScrollBar;
UpdateActive;
InvalidateEditor;
ValidateRect(Handle, nil);
Invalidate;
end;
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.12.02;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c