![]() |
|
#1
|
|||
|
|||
![]() приветствую вас уважаемые пользователи форума! Возникла трабла при создании проги,а именно есть кнопка ,которая генерирует определенный текст вот код:
Код:
procedure TForm1.Button1Click(Sender: TObject); var s, a, b, c : string; str : TStringList; i, t, p1, p2 : integer; begin memo2.Clear; str := TStringList.create; for i:=0 to memo1.Lines.Count-1 do begin s:=memo1.Lines.Strings[i]; p1:=pos('{', s); p2:=pos('}', s); if (p1<>0) and (p2<>0) then begin a:=copy(s, 1, p1-1); c:=copy(s, p2+1, MaxInt); b:=copy(s, p1+1, p2-1-p1); str.text := stringReplace(b, '|', #13#10, [rfReplaceAll]); for t:=0 to str.Count-1 do memo2.Lines.Add(inttostr(t+1) + '. '+ a + str[t] + c); end; end; str.free end; Как сделать чтобы в тот момент пока идет генерация вылезла новая форма на которой и происходил индикатор прогресс бар! Спасибо! Последний раз редактировалось Admin, 31.08.2009 в 21:45. |
#2
|
|||
|
|||
![]() Ну ... можно напрмер как то узнавать размер уже сгенерированного текста.. и показывать его на прогрес баре ....
|
#3
|
|||
|
|||
![]() Цитата:
|
#4
|
|||
|
|||
![]() Ну твой код у меня пчоему то вообще не работает)) видимо это его малая часть..
Ну напрмер, к концу генирации, получится число, которое уже не будет меняться... так как процесс закончен, и если оно остоется не изменным то, form2.close |
#5
|
||||
|
||||
![]() В общем делаете в таком стиле:
Код:
procedure TForm32.Button1Click(Sender: TObject); var I: Integer; begin Form33.FormStyle := fsStayOnTop; Form33.ProgressBar1.Max := 5000; Form33.ProgressBar1.Position := 0; Form33.Show; for I := 0 to Form33.ProgressBar1.Max do begin Memo1.Lines.Add('Item'+IntToStr(i)); Form33.ProgressBar1.StepIt; Application.ProcessMessages; end; Form33.Hide; end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
#6
|
|||
|
|||
![]() Цитата:
|