Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];
ВнизПро поток и TImage Найти похожие ветки
← →
k-sergey © (2004-08-08 10:55) [0]На форме создается динамически куча Timage и в них загружаются картинки.
Если картинок много, форма естественно тормозит.
Как можно создавать Timage в отдельном потоке?
← →
Думкин © (2004-08-08 11:18) [1]Ручками? Или это оттягивание во времени фразы: код давай?
← →
k-sergey © (2004-08-08 11:22) [2]я не очень в потоках шарю...:-\
Вот возникла необходимость разобраться.
procedure TForm1.LoadPic(alldir:string);
Var IdUser, i, ii, n, x , y,q:integer;
begin
FileListBox4.Directory:=alldir;
For x:=1 to nn do TImage(FindComponent("Image"+inttostr(x))).Free;
// создаем Image
n:=FileListBox4.Count; //всего файлов
nn:=1; // номер компонента
x:=2;
y:=1;
PathNamePic:=TStringList.Create;
ScrollBox1.Visible:=false;
for i:=1 to (round((n/5)+0.5)) do //ряды
begin
if (n-nn)>=5 then q:=5 else q:=(n-nn+1);
//Caption:="x= "+inttostr(q);
for ii:= 1 to q do // кол-во в строке
begin
with TImage.Create(Self) do begin
Parent:=ScrollBox1;
Name:="Image"+inttostr(nn);
Height:=128;
Width:=128;
Top:=Y;
Left:=x;
Center:=true;
try
Picture.LoadFromFile(alldir+"\"+FileListBox4.Items[nn-1]);
except Picture:=Im26.Picture; end;
OnDblClick:=OnImageClick;
end;
PathNamePic.Add(alldir+"\"+FileListBox4.Items[nn-1]);
inc(nn);
x:=x+128+2;
end;
y:=y+128+2;
x:=2;
end;
ScrollBox1.Visible:=True;
end;
← →
Думкин © (2004-08-08 11:24) [3]Похвально. Разобрался?
← →
k-sergey © (2004-08-08 11:28) [4]в чем?
в потоках нет....
иначе не просил помочь...
так блин тормозит
← →
Думкин © (2004-08-08 11:52) [5]> [4] k-sergey © (08.08.04 11:28)
Нет. Для начала в коде - меня он напрягает. И когда сюда - используй тег -
← →
k-sergey © (2004-08-08 12:06) [6]ну тут вроде все понятно:
procedure TForm1.LoadPic(alldir:string);
Var ii, n, nn, x , y, q:integer;
begin
n:=FileListBox4.Count; //всего файлов
nn:=1; // номер компонента
x:=2;
y:=1;
ScrollBox1.Visible:=false;
for ii:= 1 to q do // кол-во в строке
begin
with TImage.Create(Self) do begin //создаем картинки
Parent:=ScrollBox1;
Name:="Image"+inttostr(nn);
Height:=128;
Width:=128;
Top:=Y;
Left:=x;
Center:=true;
Picture.LoadFromFile(alldir+"\"+FileListBox4.Items[nn-1]); // загружаем изображение
end;
inc(nn);
x:=x+128+2;
end;
y:=y+128+2;
x:=2;
end;
ScrollBox1.Visible:=True;
end;
← →
Думкин © (2004-08-08 14:13) [7]> [6] k-sergey © (08.08.04 12:06)
Если все понятно, то в чем вопрос?
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.033 c