Вниз
Скачать: CL | DM;

Отображение формы   Найти похожие ветки 

← →
$Hic0 ©   (2003-04-12 14:07) [0]

Добрый день, мастера!
Есть код...

SetLength(Str,RichEdit1.Lines.Count*8*80);
j:=0;
For Lines:=0 to RichEdit1.Lines.Count-1 do
Begin
For i:=1 to Length(RichEdit1.Lines[Lines]) do
Begin
s:="";
s:=byte2bin(ord(RichEdit1.Lines[Lines][i]));
m:=0;
For n:=j to j+7 do Begin
Inc(m);
If s[m]="1" then
Str[n]:=true
else Str[n]:=false;
End;
Inc(j,8);
End;
End;


который ввыполняется при событии onCreate формы Form1, этот процесс довольно продолжительный... хочу что-бы во время этого дела отображалась другая форма с прогресс-баром, на котором было-бы виден процент выполненонсти... вроде все проще некуда.. создаю форму Form2, пихаю на нее прогресс бар, и пишу следующее...

If not Assigned(Form2) then Form2 := TForm2.Create(self);
Form2.ProgressBar1.Min:=0;
Form2.ProgressBar1.Max:=RichEdit1.Lines.Count;
Form2.Show;

SetLength(Str,RichEdit1.Lines.Count*8*80);
j:=0;
For Lines:=0 to RichEdit1.Lines.Count-1 do
Begin
Form2.ProgressBar1.StepBy(1);
For i:=1 to Length(RichEdit1.Lines[Lines]) do
Begin
s:="";
s:=byte2bin(ord(RichEdit1.Lines[Lines][i]));
m:=0;
For n:=j to j+7 do Begin
Inc(m);
If s[m]="1" then
Str[n]:=true
else Str[n]:=false;
End;
Inc(j,8);
End;
End;
Form2.Close;

Все хорошо, все работает, все показывается, но дело в том, что в режиме конструирования на Form2 я разполажил всякие рюшечки, такие как Метку и Имадж, но при отображении Form2, видна толька сама форма, да прогресс бар.... почему не виден лэйбл и имадж... не пойму... может кто знает что я не так делаю...
Hint... Если создаю какю-нить кнопку на первой форме и в ее обработчике вызываю отображение второй формы, то все отображается как надо...


← →
Skier ©   (2003-04-12 14:12) [1]

Не поможет ?


If not Assigned(Form2) then Form2 := TForm2.Create(self);
Form2.ProgressBar1.Min:=0;
Form2.ProgressBar1.Max:=RichEdit1.Lines.Count;
Form2.Show;

SetLength(Str,RichEdit1.Lines.Count*8*80);
j:=0;
For Lines:=0 to RichEdit1.Lines.Count-1 do
Begin
Form2.ProgressBar1.StepBy(1);
For i:=1 to Length(RichEdit1.Lines[Lines]) do
Begin
s:="";
s:=byte2bin(ord(RichEdit1.Lines[Lines][i]));
m:=0;
For n:=j to j+7 do Begin
Inc(m);
If s[m]="1" then
Str[n]:=true
else Str[n]:=false;
Application.ProcessMessages;
End;
Inc(j,8);
End;
End;
Form2.Close;


← →
$Hic0 ©   (2003-04-12 14:20) [2]

10х!


← →
Skier ©   (2003-04-12 14:26) [3]

>$Hic0
Не понял ! :)


← →
Song ©   (2003-04-12 16:20) [4]

10 - ten
x - x

tenx - если говорить вслух читается почти как сэнкьс, т.е. thanx - спасибо :)


← →
Skier ©   (2003-04-12 16:22) [5]

>Song
Забавно ! :)
Спасибо. Теперь буду знать...:)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
3-76856
Маша
2003-04-07 17:34
2003.04.24
Сколько параметров может быть в запросе?


3-76805
Новый
2003-04-04 15:19
2003.04.24
Возможно ли сжать базу данных MSAccess, как это делает сам MSAcce


7-77212
pavlentii
2003-03-05 15:51
2003.04.24
Скрытие иконки


14-77128
Феликс
2003-04-06 21:54
2003.04.24
Я весь в непонятках :)


9-76739
Alexec
2002-11-11 09:30
2003.04.24
Эмулятор OpenGL




   Наверх