Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 09.10.2011, 18:57   #1
epickgod
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 19
По умолчанию Перебор элементов в цикле

Добрый день, друзья! У меня возник вопрос:

- Есть 2 формы.
- На первой форме расположены 10 Edit`ов
- На второй 2 Edit`a и Button

Как сделать так, чтобы при нажатии на баттон в первую форму, в первые два эдита попадали значения эдитов со второй формы. Еще один клик и заполняются следующие два поля в первой форме.

Пробывал так, но выдает ошибку "List Index out of bounds":
Код:
procedure TForm2.Button1Click(Sender: TObject);
var z: integer;
begin
//Обнуляем счетчик
z:=0;

//Пробегаем циклом по элементам
for z:=0 to Form1.ComponentCount-1 do
  begin
    if Form1.Components[z] is TEdit then
      begin
        TEdit(Components[z]).Text := Edit1.Text;
        TEdit(Components[z+1]).Text := Edit2.Text;
      end;
    end;
z := z+2;
end;
Что не так? Когда это все было в одной форме, то все работало... Помогите, а?
epickgod вне форума Ответить с цитированием
Старый 09.10.2011, 19:03   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
то все работало
Да-а-а? Странно. Не должно было работать
Впрочем ладно:
Код:
      begin
        TEdit(Form1.Components[z]).Text := Edit1.Text;
        TEdit(Form1.Components[z+1]).Text := Edit2.Text;
      end;
Увидел что забыл?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.10.2011, 19:22   #3
epickgod
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 19
По умолчанию

Все равно блин разные ошибки выдает...посмотрите плз исходник. Что не так?
Вложения
Тип файла: rar ca0202.rar (235.4 Кб, 5 просмотров)
epickgod вне форума Ответить с цитированием
Старый 09.10.2011, 19:40   #4
AnKor94
Пользователь
 
Регистрация: 24.11.2009
Сообщений: 54
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Да-а-а? Странно. Не должно было работать
Впрочем ладно:
Код:
      begin
        TEdit(Form1.Components[z]).Text := Edit1.Text;
        TEdit(Form1.Components[z+1]).Text := Edit2.Text;
      end;
Увидел что забыл?
Код:
begin
        TEdit(Form1.Components[z]).Text := Form2.Edit1.Text;
        TEdit(Form1.Components[z+1]).Text := Form2.Edit2.Text;
      end;
Увидел что забыл?
141.116.168.135 : damiu2d449028.dami.army.pentagon.mi l (.MIL | US Military)
AnKor94 вне форума Ответить с цитированием
Старый 09.10.2011, 19:45   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
Увидел что забыл?
Акстись )
Код:
procedure TForm2.Button1Click(Sender: TObject);
Увидел?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.10.2011, 19:47   #6
epickgod
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 19
По умолчанию

Теперь выдает:

Access violation at address 004C01D4. Read of address 004C01D4.

И вместо того, чтобы заполнились первые 2 эдита заполняются все эдиты нулями и прочей белебердой

Последний раз редактировалось epickgod; 09.10.2011 в 19:52.
epickgod вне форума Ответить с цитированием
Старый 09.10.2011, 19:49   #7
epickgod
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 19
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Акстись )
Код:
procedure TForm2.Button1Click(Sender: TObject);
Увидел?
И че в этой строке не так?
epickgod вне форума Ответить с цитированием
Старый 09.10.2011, 19:50   #8
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Вообще-то ты стратегию неверную выбрал...
ИМХО при таком раскладе нужно по другому код писать. Но ты объясни детально зачем это нужно, уверен что есть другие способы попроще чем тот который ты выбрал.
Цитата:
И че в этой строке не так?
Все так Это я отвечал для AnKor94
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 09.10.2011, 20:12   #9
epickgod
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 19
По умолчанию

Я работаю оперптором в фотосалоне. Пишу прогу дабы облегчить себе жизнь по приему заказов. Есть 8 форматов фотографии, которые мы печатаем (9х13,10х15,13х18,15х21,20х30,25х38 ,30х40,30х46). Моя прога сожержит в общем виде 2 окна. В одном типа база данных (которая как бы должна храниться в тхт и при перезагрузке проги востанавиваться) которая выглядит в общем виде так: 100 эдитов (расчитано на 50 заказов, т.к. я неумею динамически создавать эдиты в нужное время в нужном месте), разбитых по 50 в 2 столбца. (в первом номер заказа, во втором - сумма заказа). И так для 50 заказов. Второе же в общем виде содержит 9 эдитов и 2 кнопки (1й эдит - это номер заказа, а в остальные 8 вписывается кол-во фото нужного формата. И две кнопки: 1я-"Заказ", которая считает стоимость заказа, и 2я - "Внести", для которой сейчас и пишу код). Так вот, Надо чтобы при нажатии на кнопку "ВНЕСТИ", то чтобы в первую форму в первыю пару эдитов попадал номер заказа со второй формы и сумма заказа, тоже со второй формы. Так они заполняют первые два эдита на 1й форме. При следующем заполнении формы заказа и соответственно клике на "Внести" в "Базу" дописывается еще одна пара (Номер заказа - Сумма заказа). И так при каждом клике. Такая вот проблема. Прилагаю исходник. Мож понадобиться...
Вложения
Тип файла: rar ca0202.rar (235.4 Кб, 10 просмотров)
epickgod вне форума Ответить с цитированием
Старый 09.10.2011, 20:43   #10
epickgod
Пользователь
 
Регистрация: 04.10.2011
Сообщений: 19
По умолчанию

ап .
epickgod вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Перебор элементов Namolem Помощь студентам 1 17.04.2011 14:42
Перебор элементов. Vaigard Общие вопросы Delphi 9 03.01.2011 13:09
перебор элементов (Pascal) PianeR Помощь студентам 2 18.12.2010 00:52
Перебор элементов матрицы pikkk Общие вопросы Delphi 3 09.05.2008 14:45
перебор всех элементов в TtreeView vitalik007 Общие вопросы Delphi 10 09.04.2008 15:44