![]() |
|
|||||||
| Программирование C / C++ / Visual C++ / Delphi / Visual Basic / ASM / Windows / Pascal |
|
|
Опции темы | Оценить тему |
|
|
#1 |
|
Участник
Регистрация: 24.01.2012
Сообщений: 9
ICQ: 744441 Репутация: 10
|
Здравствуйте форумчане!
Гуглил гуглил, но ничего не нагуглил. Проблема заключается в том, что я не умею работать со списками. Вот написал программу для разделения логинов от паролей: Код:
procedure TForm1.Button2Click(Sender: TObject); begin Timer1.Enabled:=true; Button2.Enabled:=false; end; procedure TForm1.Timer1Timer(Sender: TObject); begin inc(i); if i=s.Count-1 then begin Timer1.Enabled:=false; Button2.Enabled:=true; end; uin:=strtoint(copy(s.Strings[i],0,pos(Edit1.Text,s.Strings[i])-1)); Memo1.Lines.Add(inttostr(uin)); Label4.Caption:=IntToStr(StrToInt(Label4.Caption)+1); ProgressBar1.Position:=ProgressBar1.Position+1; end; Пробовал без таймера: Код:
procedure TForm1.Button2Click(Sender: TObject); begin i:=0; while i < s.Count do Button2.Enabled:=false; uin:=strtoint(copy(s.Strings[i],0,pos(Edit1.Text,s.Strings[i])-1)); Memo1.Lines.Add(inttostr(uin)); Label4.Caption:=IntToStr(StrToInt(Label4.Caption)+1); ProgressBar1.Position:=ProgressBar1.Position+1; if i = s.Count-1 then Button2.Enabled:=true; end; Подскажите новичку как работать со списками без таймера.
__________________
icq 744441 |
|
|
|
|
#4 | |
|
Участник
Регистрация: 24.01.2012
Сообщений: 9
ICQ: 744441 Репутация: 10
|
Цитата:
Так перебирает по очереди каждую строку Код:
procedure TForm1.Button2Click(Sender: TObject); begin Timer1.Enabled:=true; Button2.Enabled:=false; end; procedure TForm1.Timer1Timer(Sender: TObject); begin inc(i); if i=s.Count-1 then begin Timer1.Enabled:=false; Button2.Enabled:=true; end; uin:=strtoint(copy(s.Strings[i],0,pos(Edit1.Text,s.Strings[i])-1)); Memo1.Lines.Add(inttostr(uin)); Label4.Caption:=IntToStr(StrToInt(Label4.Caption)+1); ProgressBar1.Position:=ProgressBar1.Position+1; end; Код:
procedure TForm1.Button2Click(Sender: TObject); begin i:=0; while i < s.Count do Button2.Enabled:=false; uin:=strtoint(copy(s.Strings[i],0,pos(Edit1.Text,s.Strings[i])-1)); Memo1.Lines.Add(inttostr(uin)); Label4.Caption:=IntToStr(StrToInt(Label4.Caption)+1); ProgressBar1.Position:=ProgressBar1.Position+1; if i = s.Count-1 then Button2.Enabled:=true; end;
__________________
icq 744441 Последний раз редактировалось vlad36; 24.02.2012 в 16:31. |
|
|
|
|
|
#5 |
|
Участник
|
Код:
procedure TForm1.Button2Click(Sender: TObject); var i, uin: integer; begin Button2.Enabled:=false; for i := 0 to s.Count - 1 do begin uin := StrToIntDef(copy(s.Strings[i], 0, pos(Edit1.Text, s.Strings[i]) - 1), 0); Memo1.Lines.Add(IntToStr(uin)); Label4.Caption := IntToStr(StrToInt(Label4.Caption) + 1); // мб: Label4.Caption := IntToStr(i); ? ProgressBar1.Position := ProgressBar1.Position + 1; Application.ProcessMessages(); end; Button2.Enabled := true; end;
__________________
Хочешь знать как работает ICQ? Читай документацию по протоколу в OSCAR. Последний раз редактировалось .fry; 24.02.2012 в 17:42. |
|
|
| Плюсанул .fry : |
|
|
#6 | ||
|
Участник
Регистрация: 21.11.2009
Сообщений: 137
ICQ: 484848484 Репутация: 273
|
Цитата:
Цитата:
|
||
|
|
|
|
#7 |
|
Участник
|
Все жгут, если нет точки с запятой в строке в файл попадёт пустая строка.
__________________
Хочешь знать как работает ICQ? Читай документацию по протоколу в OSCAR. |
|
|