Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Расчет инеграла [D5]


str ©   (2002-05-28 22:03:00) 

В программировании - почти ноль.
Требуется посчитать интеграл. Сложный.
Помогите сделать прогу - на форме две кнопки (старт, стоп) и прогрессбар. Надо чтоб, пока интеграл считался, прогресс двигался, можно было отменить результаты.
формула задается в теле программы.
поможите? спасибо!


Alx2   (2002-05-29 07:51:00) [1]

В цикле, в котором происходят вычисления, на кажлом N-м шаге увеличивай значение ProgressBar и вызывай Application.ProcessMessages. Также заведи булеву переменную, в которой будет сидеть флаг остановки и если он установлен, то вываливайся из цикла. Число N выбирается из расчета, чтобы прога довольно быстро откликалась на действия пользователя (в твоем случае - нажатие кнопки "стоп"). При нажатии кнопки Стоп устанавливай флаг остановки.

Более изящное решении заключается в использовании дополнительного потока (TThread). Им можно управлять из основной программы с помощью методов Suspend и Resume.


ga3   (2002-05-29 01:13:00) [2]

А зачем кнопка Стоп? Промежуточные результаты просматривать???
давай свою формулу, токо учти - я в математике ноль-)) так что не надо писать изогнутые мудистики, напиши просто плюс, минус, разделить, умножить, возвести в степень и извлечь корень. я токо с етими действиями дело имею, а что такое интеграл для меня заагадкой с первого курса универа так и осталось.


Наверх

Титульная страница Поиск, карта сайта Написать письмо