Просмотр полной версии : У меня проблемка с делфи…
Dmitriy507
15.09.2006, 14:43
Привет!
У меня проблемка с делфи…
Короче вот:
…
const ang: string='массив';
…
if CheckBox1.Checked then
for d := 1 to StrToInt(SpinEdit2.text) do// SpinEdit2 это сколько раз делается массив
if CheckBox1.Checked then
for a := 1 to StrToInt(SpinEdit1.text) do//количество символов в генерируемом
Memo1.Text := Memo1.Text + ang[random(length(ang)+1)];
Но вводилось он не кучей а после каждого ввода на новой строчке…
Как это сделать?
И ешо к это му же михонизму…
Нада чтоб элемент Gauge1 отображал ход выполнения вышеизложенной операции.
[hidden]
15.09.2006, 14:52
Что-то я вопроса не понял.. А был ли мальчик? (с)
Если нужно сделать вывод с новой строки, то Memo1.Text := ...... + #10#13 попробуй.
Струдом понял че за хрень тебе нужна.
memo1.Lines.Add() - написал на память так что проверь
на счет прогресс бара. В начале цикла пишешь вот так
ProgressBar1.Position:=0;
потом надо присвоить прогрессбару какой то максимальный результат (число).
потом вот так ProgressBar1.Position:=i; - тоесть после каждого прохода цикла прибавляет какое то n-ое число чтобы прогресс рос.
Объяснил на пальцах)) честно говоря сам плохо понял что написал, почитай доки там все есть
[hidden]
15.09.2006, 16:29
NeX, а после присваивания ProgressBar1.Position := i; надо тогда уж обязательно вызывать Application.ProcessMessages; , иначе никакого вывода не будет, обновление интерфейса имеет низкий приоритет выполнения..
А вот что за Gauge... нафига?
gemaglabin
15.09.2006, 16:38
[hidden] Application.ProcessMessages; это плохой тон в програмировании.Идет перезагрузка всего TApplication и резко падает снижение скорости работы тогоже цикла.
По теме могу сказать
Memo1.Lines.Add(ang[random(length(ang)+1)]);
Или
Memo1.Text := Memo1.Text + Ang[random(length(ang)+1)]+#13#10;
А с прогрессбаром так
Gauge1.MaxValue := StrToInt(SpinEdit1.text);
For i := 0 to StrToInt(SpinEdit1.text) -1 do begin
[Gauge1.Progress := i;
Memo1...
Dmitriy507
15.09.2006, 21:01
извините что так понятно обьяснил...(
что вы тут подсказали я все поробывал...
одно не правельно
сначало генерируется массив букв. пароль например... потом оно добовляется в мемо1 под строчкой 0, затем генерируется второе значение и записывается в строчку 1.....
а в вашем механизме оно записывается по буквам...
и с прогресс баром тож тромба он в конце остонавливается на 80-99 по разному... не доходя до 100.... ошибка в -1 его надо было убрать...
вот...
Memo1.Text := Memo1.Text + Ang[random(length(ang)+1)]ЗДЕСЬ СДЕЛАТЬ ENTER;
заранее спасибо!
зы
всем кто помог в конце составлю плюсы!
[hidden]
15.09.2006, 22:03
[ДУБЛЬ 2]
Memo1.Text := Memo1.Text + Ang[random(length(ang)+1)] + #10#13;
А как ты ProgressBar используешь? Как _именно_?
Кстати, а чем тебе не нравится метод Memo1.Lines.add('строка'); ?
Dmitriy507
16.09.2006, 09:16
не не то он генерирет правельно но с одиными знаками...
как бы обьяснить....
эта фигня похожа на генератор паролей... пароли генерируются в список...вот...
с прогресом усе ясно....
может лучше использовать ListBox1?
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot