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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.10.2014, 21:55   #11
Lavilas
Пользователь
 
Регистрация: 09.02.2012
Сообщений: 10
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Один OnChange на все комбобоксы, в Tag комбобоксов проставить то, на что умножать
Код:
procedure TForm1.ComboBoxChange(Sender: TObject);
begin
  if TComboBox(Sender).ItemIndex<0 then Label1.Caption:=''
  else Label1.Caption:=IntToStr(StrToInt(TComboBox(Sender).Items[TComboBox(Sender).ItemIndex])*TComboBox(Sender).Tag);
end;
Нескромный вопрос: А как сделать один OnChange для всех пяти комбобоксов? Было бы замечательно...
Lavilas вне форума Ответить с цитированием
Старый 21.10.2014, 22:02   #12
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
А как сделать один OnChange для всех пяти комбобоксов? Было бы замечательно...
Ну прочитай ты хоть одну книжку по delphi!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 21.10.2014, 22:05   #13
Lavilas
Пользователь
 
Регистрация: 09.02.2012
Сообщений: 10
По умолчанию

Цитата:
Сообщение от min@y™ Посмотреть сообщение
Ну прочитай ты хоть одну книжку по delphi!
Я почему то тоже так подумал )))
Lavilas вне форума Ответить с цитированием
Старый 21.10.2014, 22:09   #14
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от Lavilas
Нескромный вопрос: А как сделать один OnChange для всех пяти комбобоксов?
во-первых, у меня к сообщению приложен архив с исходниками проекта.
В нём всем пяти комбобоксам назначен один обработчик.

во-вторых, это сделать проще простого - одному комбобоксу умеете обработчик назначать? выделите комбобоксы (либо по одному, с шифтом), либо обвести зажатой лев.кнопкой мышки.
После того, как они выделены, переходите на закладку Events и выбирайте обработчик события.
Он назначится всем выделенным комбобоксам.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.10.2014, 22:11   #15
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
Сообщение от Lavilas Посмотреть сообщение
Я почему то тоже так подумал )))
Надо же, я тоже так думаю )) С этого и начать
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 21.10.2014, 22:22   #16
Lavilas
Пользователь
 
Регистрация: 09.02.2012
Сообщений: 10
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Надо же, я тоже так думаю )) С этого и начать
Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
во-первых, у меня к сообщению приложен архив с исходниками проекта.
В нём всем пяти комбобоксам назначен один обработчик.

во-вторых, это сделать проще простого - одному комбобоксу умеете обработчик назначать? выделите комбобоксы (либо по одному, с шифтом), либо обвести зажатой лев.кнопкой мышки.
После того, как они выделены, переходите на закладку Events и выбирайте обработчик события.
Он назначится всем выделенным комбобоксам.
Спасибо. С этим разобрался. И последний вопрос, в начале я не совсем правильно изложил свой вопрос. Значения комбобоксов умноженные на числа в Лейбле должны суммироваться. Как это организовать? Мужики помогите!!!!!

Последний раз редактировалось Lavilas; 21.10.2014 в 22:42.
Lavilas вне форума Ответить с цитированием
Старый 21.10.2014, 23:05   #17
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
И последний вопрос, в начале я не совсем правильно изложил свой вопрос. Значения комбобоксов умноженные на числа в Лейбле должны суммироваться.
замените код обработчика на такой:
Код:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
   Label1.Caption := IntToStr(
      ComboBox1.Tag * ComboBox1.ItemIndex +
      ComboBox2.Tag * ComboBox2.ItemIndex +
      ComboBox3.Tag * ComboBox3.ItemIndex +
      ComboBox4.Tag * ComboBox4.ItemIndex +
      ComboBox5.Tag * ComboBox5.ItemIndex  );
end;
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.10.2014, 23:22   #18
Lavilas
Пользователь
 
Регистрация: 09.02.2012
Сообщений: 10
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
замените код обработчика на такой:
Код:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
   Label1.Caption := IntToStr(
      ComboBox1.Tag * ComboBox1.ItemIndex +
      ComboBox2.Tag * ComboBox2.ItemIndex +
      ComboBox3.Tag * ComboBox3.ItemIndex +
      ComboBox4.Tag * ComboBox4.ItemIndex +
      ComboBox5.Tag * ComboBox5.ItemIndex  );
end;
Спасибо мужики! Выручили. Всё работает! До встречи!
Lavilas вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Прошу помощи Combobox и Таблицы Lavilas БД в Delphi 9 21.10.2014 20:55
Прошу помощи! hijke Паскаль, Turbo Pascal, PascalABC.NET 0 10.06.2009 18:04
прошу помощи ex-hack Помощь студентам 2 05.06.2009 15:54