Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 17.01.2013, 01:33
R3VeRSe R3VeRSe вне форума
Прохожий
 
Регистрация: 17.01.2013
Сообщения: 4
Репутация: 10
По умолчанию Стоп пока progressbar не закончит и PB с глобальной переменной

Всем доброго времени суток.
Задача такая:
В одной форме нажимается кнопка->Запускается ProgressBar ->он заканчивает и появляется скрытая кнопка, НО
1)нужно чтобы была возможность регулировать скорость PB из другой формы, а значит скорее всего глобальная переменная
2)нужно чтобы пользователь не мог что либо нажать до тех пор, пока PB не закончит

Пробовал:

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin

   for i:=i to Max do
     begin
       proc := ((i * 100) div Max);
       ProgressBar1.Position := proc;
     end;
end;

в таком случае, без Application.ProcessMessages, соблюдается пункт 2, но необходимо чтобы переменные i и max были локальными (а мне нужно менять max, а соответственно и скорость PB из другой формы)

Пробовал ещё:

Код:
procedure TForm5.Button1Click(Sender: TObject);
begin
 Tmr1.Enabled:=true;
end;

procedure TForm5.tmr1Timer(Sender: TObject);
begin
i:=i+1;
PB1.Position:=i;
if i=100 then
Tmr1.Enabled:=False;
end;

Тут вроде все здорово, можно менять скорость PB изменением интервала таймера, но пользователь может нажать на другие элементы формы пока PB выполняется, а это плохо. Команда sleep останавливает и таймер, да и корректировать ее под каждую скорость PB неудобно.


Прошу, люди добрые, как это реализовать? Мб кто подкинет ещё более гениальную идею, либо исправит дефекты моих способов? Запарился искать в яндексе... =\

Последний раз редактировалось lmikle, 17.01.2013 в 02:42.
Ответить с цитированием
Этот пользователь сказал Спасибо R3VeRSe за это полезное сообщение:
OTVET (18.01.2013)
 


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:08.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025