Мария Михалева
Мария Михалева | Репутация: 0 (Без голоса) 4 мая 2016 в 16:46
TComboBox в Lazarus

Кто может подсказать код или идею его создания для того, чтобы от выбранного параметра в СomboBox зависело решение задачи. Пользователь вводит другие числовые параметры, затем выбираем тип материала в СВ, а затем в всплювыющем окне выдается ответ. Буду очень благодарна, если вы поможете.

Сергей Чеботарев
Сергей Чеботарев | Репутация: 538 (Специалист) 5 мая 2016 в 06:54

Я пока не программировал в Lazarus, но думаю, что Вам нужно получить доступ к элементам CB (Items). Они являются по своей сути элементами текстового массива. Если строка с определенным выбранным значением равна значению материала, то производим необходимые вычисления. Попробуйте разбить программу на части: 1) если элемент тестового массива - 'Сталь', то в зависимости от введённых величин диаметра и величины натяга произвести вычисления температуры нагрева 2) если элемент тестового массива 'Чугун литейный', то в зависимости от от введённых величин диаметра и величины натяга произвести вычисления температуры нагрева и т.д. Величины диаметра и натяга необходимо преобразовать в числовые, рассчитать температуру и вывести её уже во всплывающем окне. Что-то типа такого: Если ComboBox1.Items.Strings[ComboBox1.ItemIndex] равен 'Сталь', то выполняем блок операций, а при нажатии на кнопку Ответ, с помощью оператора ShowMessage() выводим результаты расчётов.