Форум: "Основная";
Текущий архив: 2002.08.15;
Скачать: [xml.tar.bz2];
Внизпроблема с созданием компонет в run-time е Найти похожие ветки
← →
Дмитрий Иванов (2002-08-05 02:04) [0]Доброй ночи! Не могу понять в чем проблема:((
Хочу создать 30 Image"й и расположить их одна за одной в ScrollBox"e.
Вроде делаю все правильно, но на строчке Top:=H; вылетает Exception.
Главное, если вместо ScrollBox1 писать Form1, то ошибки не будет, и все картинки расположатся как надо, только соответственно это будет на форме, а мне надо в ScrollBox"e.
Вот код:
procedure TForm1.Button1Click(Sender: TObject);
var i,H:integer;BitMap:TBitMap;
begin
H:=0;
BitMap:=TBitMap.Create;
For i:=1 to 30 do
begin
BitMap.LoadFromFile(IntToStr(i)+".bmp");
TImage.Create(ScrollBox1).Name:="Image"+IntToStr(i);
with TImage(FindComponent("Image"+IntToStr(i))) do
begin
Top:=H;
Left:=0;
AutoSize:=True;
Picture.Graphic:=BitMap;
H:=Top+Height+10;
Parent:=ScrollBox1;
end;
end;
BitMap.Free;
end;
ЗЫ Есть подозрения что не срабатывает строка TImage.Create(ScrollBox1).Name:="Image"+IntToStr(i); , только вот почему, я не знаю, ведь вроде как для AOwnera ScrollBox ничем не отличается от Form"ы...
← →
Дмитрий Иванов (2002-08-05 02:06) [1]Все, заработало как надо, заменил TImage.Create(ScrollBox1).Name:="Image"+IntToStr(i); на
TImage.Create(Form1).Name:="Image"+IntToStr(i);
Ну все-равно, вопрос еще открыт - почему Create"у не нравится ScrollBox как AOwner?
← →
Gonza (2002-08-05 02:57) [2]Потому что FindComponent не находит твой Image, т.к. ищет его в списке компонентов формы. Если написать ScrolBox1.FindComponent, то все будет ОК.
← →
Дмитрий Иванов (2002-08-05 03:45) [3]понял. спасибо.
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.08.15;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.007 c