Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
3-4233
Youri
2002-11-07 13:52
2002.12.02
Не работает IBQuery1.ApplyUpdates.


1-4368
Карелин Артем
2002-11-22 09:41
2002.12.02
Быстрое копирование экрана. Часть II


3-4195
Pegas
2002-11-13 15:12
2002.12.02
InterBase после удаления даных база не уменьшается!


1-4351
KLEVO
2002-11-21 23:00
2002.12.02
Пару вопросов


3-4181
bigbill
2002-11-13 04:41
2002.12.02
номер записи ПОСЛЕ фильтрации





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский