Проблема С Создаными Динамически Edit'ами

Тема в разделе "Delphi - Компоненты", создана пользователем Xatiko, 5 мар 2013.

  1. Xatiko

    Xatiko New Member

    Регистрация:
    5 мар 2013
    Сообщения:
    2
    Симпатии:
    0
    Доброго времени суток!
    Подскажите в таком вопросе:
    На форме есть memo и buton, в memo мы вводим число нажимаем на buton и создаются edit'ы столько сколько мы указали. Работает все хорошо, но мне надо производить арифметические действия с edit'ами. Например memo2.text:=edit1+edit2; .
    Код:

    Код (Text):
    procedure TForm1.Button1Click(Sender: TObject);

    var Lab: Array of TLabel;
    Ed: Array of TEdit;
    i: Integer;
    n: integer;
    begin
    n := 500;
    SetLength(Lab, n+1);
    SetLength(Ed, n+1);

    for i:=1 to strtoint(memo1.Text) do
    begin
    Lab[i] := TLabel.Create(self);
    Lab[i].Parent := self;
    Lab[i].Left := 10;
    Lab[i].Top := i*30+20;
    Lab[i].Caption := 'Этикетка'+IntToStr(i);
    Ed[i] := TEdit.Create(self);
    Ed[i].Parent := self;
    Ed[i].Left := 150;
    Ed[i].Top := i*30+20;
    Ed[i].Text := 'Поле ввода '+IntToStr(i);
    Ed[i].Name:= 'Edit'+IntToStr(i);
    end;
    end;
    Запись типо: memo2.text:=IntToStr(StrToInt(Edit1 .text)+StrToInt(Edit2.text));
    Не пойдет выдает ошибку " is not a valid integer value"
    Просьба откликнуться))
     

    Вложения:

    • 111.jpg
      111.jpg
      Размер файла:
      40,9 КБ
      Просмотров:
      18
    • 222.jpg
      222.jpg
      Размер файла:
      14,9 КБ
      Просмотров:
      20
  2. -master-

    -master- Well-Known Member

    Регистрация:
    14 янв 2012
    Сообщения:
    629
    Симпатии:
    19
    Вам переводчик нужен, это не в этом форуме, идите на форум переводчиков.
     
  3. sinkopa

    sinkopa Well-Known Member

    Регистрация:
    17 июн 2009
    Сообщения:
    344
    Симпатии:
    9
    Ошибка говорит о том, что значение введенное в Ваш TEdit, не является допустимым целым числом.
    Вот это
    Код (Delphi):
    Ed[i].Text := 'Поле ввода '+IntToStr(i);
    зачем Вы делаете? Это точно не целое... :)
    Для проверки на правильность вводимых в TEdit значений, воспользуйтесь функцией TryStrToInt
    Код (Delphi):
    procedure TForm1.Button1Click(Sender: TObject);
    var
    a,b: Integer;
    begin
    if TryStrToInt(Edit1.Text,a) and TryStrToInt(Edit2.Text,b) then
    Memo2.Text := IntToStr(a+b)
    else
    begin
    ShowMessage('Введенные значения не являются целыми числами!');
    Exit;
    end;
    end;
     
Загрузка...
Похожие Темы - Проблема Создаными Динамически
  1. AgniXRudra
    Ответов:
    2
    Просмотров:
    54
  2. Zloikaktus
    Ответов:
    0
    Просмотров:
    31
  3. c0de3r
    Ответов:
    5
    Просмотров:
    153
  4. DobermannTT
    Ответов:
    10
    Просмотров:
    160
  5. SoulPaladin
    Ответов:
    4
    Просмотров:
    145

Поделиться этой страницей