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

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

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

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

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

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

Спасибо всем за помощь.
Появился ещё один вопрос.
Есть 5 combobox'ов. Значения от 0, до 4х.

1 combobox считываем значение и умножаем на 2
2 combobox считываем значение и умножаем на 25
3 combobox считываем значение и умножаем на 3
4 combobox считываем значение и умножаем на 7
5 combobox считываем значение и умножаем на 15

Как это можно сделать менее грамоздко, и чтоб при выборе значений в Combobox'e, автоматически менялся результат в Label'e ?
Lavilas вне форума Ответить с цитированием
Старый 21.10.2014, 20:50   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

покажите код заполнения комбобоксов..
а ещё лучше - выложите архив с исходниками проекта.
будет повод для конкретного разговора.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.10.2014, 20:54   #3
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Я лично ничего не понял...
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.10.2014, 20:58   #4
Lavilas
Пользователь
 
Регистрация: 09.02.2012
Сообщений: 10
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
покажите код заполнения комбобоксов
комбобоксы заполнены через Items цифрами 0,1,2,3,4
Lavilas вне форума Ответить с цитированием
Старый 21.10.2014, 20:59   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Я лично ничего не понял...
кстати, сейчас увидел, что TC эту тему создал, т.к. его предыдущую тему закрыли из-за неадекватных комментариев нетрезвого Смитта...

Цитата:
комбобоксы заполнены через Items цифрами 0,1,2,3,4
все пять комбобоксов заполнены одинаково?

Последний раз редактировалось Stilet; 21.10.2014 в 21:36.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.10.2014, 21:03   #6
Lavilas
Пользователь
 
Регистрация: 09.02.2012
Сообщений: 10
По умолчанию

Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
все пять комбобоксов заполнены одинаково?
Да, заполнены одинаково.
Lavilas вне форума Ответить с цитированием
Старый 21.10.2014, 21:07   #7
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

а где тута база данныхЪ?
Изображения
Тип файла: png 13.png (9.7 Кб, 66 просмотров)
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 21.10.2014, 21:19   #8
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Один 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;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 21.10.2014, 21:24   #9
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

быдлокод заказывали?

получите и распишитесь: Project1.rar


там внутри:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var i : integer;
begin
  Label1.Caption := '0';
  for I := 0 to 4 do begin
    ComboBox1.Items.Append(IntToStr(i));
    ComboBox2.Items.Append(IntToStr(i));
    ComboBox3.Items.Append(IntToStr(i));
    ComboBox4.Items.Append(IntToStr(i));
    ComboBox5.Items.Append(IntToStr(i));
  end;
  ComboBox1.ItemIndex := 0;
  ComboBox2.ItemIndex := 0;
  ComboBox3.ItemIndex := 0;
  ComboBox4.ItemIndex := 0;
  ComboBox5.ItemIndex := 0;
end;


procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  {1 combobox считываем значение и умножаем на 2
 2 combobox считываем значение и умножаем на 25
 3 combobox считываем значение и умножаем на 3
 4 combobox считываем значение и умножаем на 7
 5 combobox считываем значение и умножаем на 15}
 if Sender = ComboBox1 then Label1.Caption := IntToStr( 2 * ComboBox1.ItemIndex);
 if Sender = ComboBox2 then Label1.Caption := IntToStr( 25 * ComboBox1.ItemIndex);
 if Sender = ComboBox3 then Label1.Caption := IntToStr( 3 * ComboBox1.ItemIndex);
 if Sender = ComboBox4 then Label1.Caption := IntToStr( 7 * ComboBox1.ItemIndex);
 if Sender = ComboBox5 then Label1.Caption := IntToStr( 15 * ComboBox1.ItemIndex);

end;
p.s. про Tag не сообразил. сейчас исправлю..

с тэгами так можно:
Код:
procedure TForm1.FormCreate(Sender: TObject);
var i : integer;
begin
  Label1.Caption := '0';
  for I := 0 to 4 do begin
    ComboBox1.Items.Append(IntToStr(i));
    ComboBox2.Items.Append(IntToStr(i));
    ComboBox3.Items.Append(IntToStr(i));
    ComboBox4.Items.Append(IntToStr(i));
    ComboBox5.Items.Append(IntToStr(i));
  end;
  ComboBox1.ItemIndex := 0;
  ComboBox2.ItemIndex := 0;
  ComboBox3.ItemIndex := 0;
  ComboBox4.ItemIndex := 0;
  ComboBox5.ItemIndex := 0;

  ComboBox1.Tag := 2;      { 1 combobox считываем значение и умножаем на 2  }
  ComboBox2.Tag := 25;     { 2 combobox считываем значение и умножаем на 25 }
  ComboBox3.Tag := 3;      { 3 combobox считываем значение и умножаем на 3  }
  ComboBox4.Tag := 7;      { 4 combobox считываем значение и умножаем на 7  }
  ComboBox4.Tag := 15;     { 5 combobox считываем значение и умножаем на 15 }

end;


procedure TForm1.ComboBox1Change(Sender: TObject);
begin
 if Sender is TComboBox then
     Label1.Caption := IntToStr( TComboBox(Sender).Tag * TComboBox(Sender).ItemIndex);
end;
Вложения
Тип файла: rar Project1.rar (1.1 Кб, 7 просмотров)

Последний раз редактировалось Stilet; 21.10.2014 в 21:37.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 21.10.2014, 21:35   #10
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Цитата:
быдлокод заказывали?


Не делай так, подлецЪ!!! Мне теперь кашмары сниться будуть!
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 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