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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.08.2008, 17:09   #1
Omedus
Пользователь
 
Аватар для Omedus
 
Регистрация: 01.11.2007
Сообщений: 27
Вопрос Delphi: Проблема с созданием объектов

Доброго времени суток. Мне нужно написать программу, которая при нажатии на кнопку создаёт Memo, Label и сдвигает кнопку ниже.
В теории я всё это сделал, Label заполняется цифрой-счётчиком (по количеству созданных Memo), всё подровнял...
А потом я заметил, что после трёх нажатий кнопка "улетает" на исходную позицию, а с четвёртым нажатием Label и Memo тоже начинают создаваться заного, с исходной позиции при этом создаваясь "друг-на-друге".
Подскажите пожалуйста: из-за чего это происходит и как это исправить?

Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
Memo1:=TMemo.Create(self);
Memo1.Parent:=self;
Memo1.Text:='';
Memo1.Left:=32;
Memo1.Height:=49;
Memo1.Width:=761;
Memo1.Top:=n;
n:=n+65;
m:=m+1;
Button1.Top:=n;
Form1.Height:=Form1.Height+65;
Label1:=TLabel.Create(self);
Label1.Parent:=self;
Label1.Height:=13;
Label1.Width:=17;
Label1.Top:=Memo1.Top;
Label1.Caption:=IntToStr(m)+'.';
Label1.Left:=8;
end;
Генерация случайных чисел — слишком важное дело, чтобы оставлять её на волю случая.
Scientia potentia est

Последний раз редактировалось Omedus; 08.08.2008 в 17:16.
Omedus вне форума Ответить с цитированием
Старый 08.08.2008, 17:12   #2
Карась
Участник клуба
 
Аватар для Карась
 
Регистрация: 26.10.2007
Сообщений: 1,244
По умолчанию

Я думаю неправильно написан код. Кстати где он?
Умом Россию не понять, пока не выпито ноль пять,
А если выпито ноль пять всё делом кажется не хитрым,
Попытка глубже понимать уже попахивает литром...
Карась вне форума Ответить с цитированием
Старый 08.08.2008, 17:17   #3
Omedus
Пользователь
 
Аватар для Omedus
 
Регистрация: 01.11.2007
Сообщений: 27
По умолчанию

Добавил. Про код забыл сперва...)
Генерация случайных чисел — слишком важное дело, чтобы оставлять её на волю случая.
Scientia potentia est
Omedus вне форума Ответить с цитированием
Старый 08.08.2008, 18:02   #4
puporev
Старожил
 
Регистрация: 13.10.2007
Сообщений: 2,740
По умолчанию

Не знаю, у меня нормально работает.
n,m:integer; в глобальных объявил?
P.S. После 12 нажатий начинается увеличение просветов между Memo. Почему, не знаю, думать лень.

Последний раз редактировалось puporev; 08.08.2008 в 18:16.
puporev вне форума Ответить с цитированием
Старый 08.08.2008, 18:42   #5
Omedus
Пользователь
 
Аватар для Omedus
 
Регистрация: 01.11.2007
Сообщений: 27
По умолчанию

Спасибо, нашёл ошибку. m,n - было объявлено byte >_<
Генерация случайных чисел — слишком важное дело, чтобы оставлять её на волю случая.
Scientia potentia est
Omedus вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с созданием компонентов dr.Chas Общие вопросы Delphi 4 25.04.2008 20:12
Свойства объектов (Delphi) FliPP Общие вопросы Delphi 5 05.01.2008 04:09
Возникла проблема с созданием таблиц баз данных. Plastik-X БД в Delphi 1 10.12.2007 12:25
Проблема с созданием файла справки belochka Общие вопросы Delphi 5 05.11.2007 18:24