Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.07.2015, 22:23   #11
Jenny89
Пользователь
 
Регистрация: 14.07.2015
Сообщений: 30
По умолчанию

Спасибо большое!!! Вот только не могу понять для чего событие OnChange?
Jenny89 вне форума Ответить с цитированием
Старый 14.07.2015, 22:36   #12
xxbesoxx
Участник клуба
 
Регистрация: 10.08.2010
Сообщений: 1,389
По умолчанию

Цитата:
Сообщение от Jenny89 Посмотреть сообщение
Спасибо большое!!! Вот только не могу понять для чего событие OnChange?
Код:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
 // Если  ComboBox1.Text не равно НЕЧЕГО
 if ComboBox1.Text<>'' then // Тогда
 begin // Начинаем
   with qryCust do
    begin
       // делаем запрос на выборке
        Close;
        SQL.Clear;
        SQL.Add('SELECT* FROM Cust '); // из таблици Cust
        SQL.Add('WHERE C_name = '''+ ComboBox1.Text +''''); // где  "C_name" равно  пасажир который выбранно из "ComboBox1"
        Open;
    end;
 end;
end;
А так понятно ?
xxbesoxx вне форума Ответить с цитированием
Старый 14.07.2015, 23:00   #13
Jenny89
Пользователь
 
Регистрация: 14.07.2015
Сообщений: 30
По умолчанию

Еще раз большое спасибо, только завтра на работе смогу проверить.
Jenny89 вне форума Ответить с цитированием
Старый 15.07.2015, 10:56   #14
Jenny89
Пользователь
 
Регистрация: 14.07.2015
Сообщений: 30
По умолчанию

Все отлично работает спасибо!!!

Еще раз простите за мою несообразительность, но я все таки не пойму зачем нам событие onchange в combobox-e. Сам код мне понятен, только я не пойму зачем еще раз заполнять поля (менять текст), если с

Код:
while not qryCust.EOF do
  begin
    ComboBox1.Items.Add(qryCust.FieldByName('C_name').AsString);
    qryCust.Next;
end;
поля и так заполняются?

Последний раз редактировалось Jenny89; 15.07.2015 в 10:58.
Jenny89 вне форума Ответить с цитированием
Старый 15.07.2015, 11:25   #15
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
но я все таки не пойму зачем нам событие onchange в combobox-e
по этому событию делается выборка из таблицы Cust - находится нужная запись в этой таблице по выбранному имени.
Как я Вам выше говорил, что когда Вы в комбобоке выбираете строку (имя поставщика), нужно где-то брать ID (идентификатор) этого поставщика.
xxbesoxx это значение читает из базы при каждом изменении комбобокса.

я (и другие форумчане) предлагали этот ID занести в комбобокс (в цикле заполнения комбобокса) и потом брать его оттуда (см., например, пост #5).


Цитата:
поля и так заполняются?
в том то и дело, что Вы в цикле заполняете ТОЛЬКО имя. этого недостаточно.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 15.07.2015, 11:37   #16
Jenny89
Пользователь
 
Регистрация: 14.07.2015
Сообщений: 30
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
по этому событию делается выборка из таблицы Cust - находится нужная запись в этой таблице по выбранному имени.
Как я Вам выше говорил, что когда Вы в комбобоке выбираете строку (имя поставщика), нужно где-то брать ID (идентификатор) этого поставщика.
xxbesoxx это значение читает из базы при каждом изменении комбобокса.

я (и другие форумчане) предлагали этот ID занести в комбобокс (в цикле заполнения комбобокса) и потом брать его оттуда (см., например, пост #5).



в том то и дело, что Вы в цикле заполняете ТОЛЬКО имя. этого недостаточно.
Все теперь понятно, спасибо :-)
Jenny89 вне форума Ответить с цитированием
Старый 15.07.2015, 11:50   #17
Jenny89
Пользователь
 
Регистрация: 14.07.2015
Сообщений: 30
По умолчанию

Еще один вопрос при выборе поля я могу только вписывать новую запись в dbgrid-e, a мне бы хотелось, чтобы еще показывались уже существующие записи в dbgrd-e (адреса) к выбранному полю (к клиенту) в combobox-e (по выбранному ID). Вообщем выборка не совсем как хотелось работает.

Да и когда я в событие Afterscroll ставлю filtered:=true выскакивает ошибка: Projekt raised exception class 'External:SIGSEGV'

Последний раз редактировалось Jenny89; 15.07.2015 в 12:21.
Jenny89 вне форума Ответить с цитированием
Старый 15.07.2015, 15:31   #18
Jenny89
Пользователь
 
Регистрация: 14.07.2015
Сообщений: 30
По умолчанию

Все нет никаких ошибок, всем спасибо за помощь!!!
Jenny89 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Связывание таблиц Pyxy Microsoft Office Access 1 12.11.2013 07:22
Связывание таблиц Pyxy Microsoft Office Access 0 30.10.2013 18:05
Связывание таблиц Nastya_cutie Microsoft Office Excel 6 06.03.2012 18:04
связывание таблиц RamireZ БД в Delphi 0 25.05.2010 15:40
Связывание таблиц stscolt БД в Delphi 0 21.03.2010 11:29