Вниз
Скачать: CL | DM;

Указатели.   Найти похожие ветки 

← →
RDA ©   (2002-11-12 16:37) [0]

Никогда не понимал указателей, может счас пойму. Есть три модуля.
1. Главная форма (fmMain:TForm).
2. Модуль с компонентами доступа к базе (DM:TDataModule).
3. Форма редактирования базы (fmPred:TForm).

В DM описана процедура которая заполняет выпадающий список расположенный на fmMain значениями из таблицы. (Скорее всего это уже не правильно, но ... пока так).


procedure TDM.LoadPred(ABarComboBox:TdxBarCombo);
begin
if not Pred.IsEmpty then
begin
ABarComboBox.Items.Clear;
Pred.First;
while not Pred.Eof do
begin
if ABarComboBox.Items.Count=0 then ABarComboBox.Items.Add(PredNAZV.AsString)
else
if ABarComboBox.Items.IndexOf(PredNAZV.AsString)=-1
then ABarComboBox.Items.Add(PredNAZV.AsString);
Pred.Next;
end;
end;
end;

Все работает нормально.

Но необходимо поновой заполнить список в случае изменения таблицы (вставка, удаление, изменение), которая редактируется путем вызова fmPred.

Вопрос, как это правильно организовать?
Пока у меня есть два варианта:

1. При вызове из fmMain передать fmPred как переменную выпадающий список, которую использовать при закрытии fmPred для передачи в DM как параметр. Не очень.

2. Повесить в DM на OnDataChange соответствующей таблицы вышеприведенную процедуру - но что тогда использовать как параметр для нее.

Мне кажется здесь нужно как-то использовать указатели на объект, но как ... Может на этом примере разбирусь.


← →
Reindeer Moss Eater   (2002-11-12 16:43) [1]

Попробуй так:
procedure TDM.LoadPred(AList:TStrings);


← →
Reindeer Moss Eater   (2002-11-12 16:52) [2]

Либо
procedure fmMain.SetupDropDownList(AList:Tstrings);
begin
;Запоняем выпадающий список какого-то контрола переданного из DM
end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.013 c
1-69269
VJar
2002-11-11 22:36
2002.11.21
Связь кнопок формы м кнопками клавиатуры


1-69417
Cheester[X3]
2002-11-10 17:45
2002.11.21
Buttonы


3-69186
Lepa
2002-10-31 22:28
2002.11.21
Как обновлять данные нескольких таблиц при работе программы?


3-69181
Tornado
2002-10-30 22:07
2002.11.21
ADO + Access


14-69542
keymaster
2002-11-02 21:40
2002.11.21
Never Hood HEEEEELP!!!




   Наверх