Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.11.21;
Скачать: 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 вся ветка

Текущий архив: 2002.11.21;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.019 c
1-69282
Semion
2002-11-09 08:24
2002.11.21
Чтение и запись в файл


1-69432
Minibox
2002-11-11 10:55
2002.11.21
Midas (DCOM)-приложения не работают после установки VS.NET


1-69340
Новенький в Делфи
2002-11-12 19:52
2002.11.21
StringList1.LoadFromStream(MemoryStream1) - проблема


14-69490
vic_vm
2002-10-31 14:56
2002.11.21
Сайты о погоде над Европой


14-69545
TTCustomDelphiMaster
2002-11-01 18:10
2002.11.21
Безопасный код :)