У меня проблемка с делфи…

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by Dmitriy507, 15 Sep 2006.

  1. Dmitriy507

    Dmitriy507 Elder - Старейшина

    Joined:
    29 Apr 2006
    Messages:
    135
    Likes Received:
    19
    Reputations:
    6
    Привет!
    У меня проблемка с делфи…
    Короче вот:

    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 отображал ход выполнения вышеизложенной операции.
     
    1 person likes this.
  2. [hidden]

    [hidden] Elder - Старейшина

    Joined:
    5 Nov 2005
    Messages:
    70
    Likes Received:
    19
    Reputations:
    7
    Что-то я вопроса не понял.. А был ли мальчик? (с)

    Если нужно сделать вывод с новой строки, то Memo1.Text := ...... + #10#13 попробуй.
     
    #2 [hidden], 15 Sep 2006
    Last edited: 15 Sep 2006
  3. Utochka

    Utochka Elder - Старейшина

    Joined:
    21 Dec 2005
    Messages:
    495
    Likes Received:
    106
    Reputations:
    54
    Струдом понял че за хрень тебе нужна.

    memo1.Lines.Add() - написал на память так что проверь

    на счет прогресс бара. В начале цикла пишешь вот так
    ProgressBar1.Position:=0;
    потом надо присвоить прогрессбару какой то максимальный результат (число).
    потом вот так ProgressBar1.Position:=i; - тоесть после каждого прохода цикла прибавляет какое то n-ое число чтобы прогресс рос.

    Объяснил на пальцах)) честно говоря сам плохо понял что написал, почитай доки там все есть
     
  4. [hidden]

    [hidden] Elder - Старейшина

    Joined:
    5 Nov 2005
    Messages:
    70
    Likes Received:
    19
    Reputations:
    7
    NeX, а после присваивания ProgressBar1.Position := i; надо тогда уж обязательно вызывать Application.ProcessMessages; , иначе никакого вывода не будет, обновление интерфейса имеет низкий приоритет выполнения..

    А вот что за Gauge... нафига?
     
  5. gemaglabin

    gemaglabin Green member

    Joined:
    1 Aug 2006
    Messages:
    772
    Likes Received:
    842
    Reputations:
    1,369
    [hidden] Application.ProcessMessages; это плохой тон в програмировании.Идет перезагрузка всего TApplication и резко падает снижение скорости работы тогоже цикла.

    По теме могу сказать
    Code:
    Memo1.Lines.Add(ang[random(length(ang)+1)]);
    Или
    Memo1.Text := Memo1.Text + Ang[random(length(ang)+1)]+#13#10;
    А с прогрессбаром так

    Code:
    Gauge1.MaxValue := StrToInt(SpinEdit1.text);
    For i := 0 to StrToInt(SpinEdit1.text) -1 do begin
    [Gauge1.Progress := i;
    Memo1...
     
  6. Dmitriy507

    Dmitriy507 Elder - Старейшина

    Joined:
    29 Apr 2006
    Messages:
    135
    Likes Received:
    19
    Reputations:
    6
    извините что так понятно обьяснил...(
    что вы тут подсказали я все поробывал...
    одно не правельно
    сначало генерируется массив букв. пароль например... потом оно добовляется в мемо1 под строчкой 0, затем генерируется второе значение и записывается в строчку 1.....
    а в вашем механизме оно записывается по буквам...
    и с прогресс баром тож тромба он в конце остонавливается на 80-99 по разному... не доходя до 100.... ошибка в -1 его надо было убрать...
    вот...
    Memo1.Text := Memo1.Text + Ang[random(length(ang)+1)]ЗДЕСЬ СДЕЛАТЬ ENTER;
    заранее спасибо!

    зы
    всем кто помог в конце составлю плюсы!
     
  7. [hidden]

    [hidden] Elder - Старейшина

    Joined:
    5 Nov 2005
    Messages:
    70
    Likes Received:
    19
    Reputations:
    7
    [ДУБЛЬ 2]

    Memo1.Text := Memo1.Text + Ang[random(length(ang)+1)] + #10#13;

    А как ты ProgressBar используешь? Как _именно_?

    Кстати, а чем тебе не нравится метод Memo1.Lines.add('строка'); ?
     
    1 person likes this.
  8. Dmitriy507

    Dmitriy507 Elder - Старейшина

    Joined:
    29 Apr 2006
    Messages:
    135
    Likes Received:
    19
    Reputations:
    6
    не не то он генерирет правельно но с одиными знаками...
    как бы обьяснить....
    эта фигня похожа на генератор паролей... пароли генерируются в список...вот...
    с прогресом усе ясно....
    может лучше использовать ListBox1?