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

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

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 24.07.2011, 12:09   #1
Gover
Пользователь
 
Регистрация: 28.03.2010
Сообщений: 20
По умолчанию Как просуммировать Edit'ы в зависимости от условия

День добрый.
Никак не могу справиться с такой задачей.
на форме есть 4 Edit'a и 4 Label'a.
Lable.Caption принимает определенное буквенное значение (A, B, C, D, E, F, G или H) исходя из параметров, которые задал пользователь.
В Edit'ах находятся определенные цифры.
Мне нужно сложить данные Edit'ов, и вывести результат в пятый и шестой Edit но при условии, что если один из Caption равно 'H', то его результат надо поместить в один Edit, а три других (у которых Caption не равно 'H') сложить и результат присвоить шестому Edit'у.
Буду признателен за любые подсказки.
Gover вне форума Ответить с цитированием
Старый 24.07.2011, 14:10   #2
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,426
По умолчанию

обратиться компоненту по его tag.

edi1.tag - 1
edi2.tag - 2
edi3.tag - 3
edi4.tag - 4
Человек_Борща вне форума Ответить с цитированием
Старый 24.07.2011, 14:22   #3
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
По умолчанию

размести все Edit'ы на панели. а потом пересчитай их так:
Код:
with Panel1 do for i:=1 to 7 do if(TEdit(Controls[i-1]).Visible=True)then Edit8.Visible:=True;
здесь проверка условия, что если все 7 Edit'ов видны, то должен появится ранее скрытый Edit8.
Ну, или вместо условия видимости можно поставить своё, скажем, наличие текста в окошке Edit'а.
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 24.07.2011, 15:36   #4
Gover
Пользователь
 
Регистрация: 28.03.2010
Сообщений: 20
По умолчанию

Немного не то. Дело не в том, чтобы их пересчитать, а надо сложить проще говоря рубли с рублями, доллары с долларами и результат вывести в каждый из Эдитов.
У меня написано в обработчике OnChange
Код:
if Label18.Caption <> 'H' then Edit18.Text:=Edit4.Text;
Edit17.Text:=IntToStr(StrToIntDef(Edit8.Text,0) + StrToIntDef(Edit12.Text,0) + StrToIntDef(Edit16.Text,0));
Но это не катит, может не хватает еще каких-нибудь условий?
Gover вне форума Ответить с цитированием
Старый 24.07.2011, 15:45   #5
NetSpace
Участник клуба
 
Аватар для NetSpace
 
Регистрация: 03.06.2009
Сообщений: 1,814
По умолчанию

а зачем складывать килограммы и метры? это ж разные единицы!
надо всё привести к одной денежной единице. курса валют вам не хватает, чтоб 30 руб = 1$. Может, как-то так?
Программирование - это единственный способ заставить компьютер делать то, что тебе хочется, а не то, что приходится.
NetSpace вне форума Ответить с цитированием
Старый 24.07.2011, 16:06   #6
Gover
Пользователь
 
Регистрация: 28.03.2010
Сообщений: 20
По умолчанию

В этом специфика программы, нужно сложить валюты по отдельности.
Gover вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вставить рисунок в таблицу в зависимости от условия fateev_max Microsoft Office Excel 8 17.03.2010 20:30
Как просуммировать диапазоны? Алексей11111 Microsoft Office Excel 7 28.11.2009 18:19
Присваивание ячейке значения в зависимости от условия DimonPS Microsoft Office Excel 3 12.11.2009 14:01
Как просуммировать список??? F_A_N_Alex Помощь студентам 8 02.10.2009 17:18
как просуммировать динамический диапазон abocharov Microsoft Office Excel 8 22.10.2008 18:47