Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как в массив засунуть картинки? [D7, XP]


MZP ©   (2008-01-16 18:18:00) 

Всем здрасте! Подскажите пожалуйста, как в массив можно засунуть изображения?


Kolan   (2008-01-16 19:06:00) [1]

> [18] MZP   (16.01.08 19:00)
> Ты прав. Тем более файлы размером около 200 кб.

Поэтому можешь сначала сделать просто загрузку всего.

А потом надо научится расчитывать сколько файлов увидит пользователь, и загружать только видимые, а не видимые выгружать по мере скрола…
Это как вариант.


MZP   (2008-01-16 19:00:00) [2]

Ты прав. Тем более файлы размером около 200 кб.


Kolan   (2008-01-16 18:56:00) [3]

> Ну, Рамиль, сам понимаешь, никому не интересно хранить в
> одной папке 10000

Тебе указале на возможную ошибку в твоем не написанном еще приложении, а ты её игнорируешь… А вариант с 10 000 картинок весьма реален… Ты должен хотябы задуматься над тем, что будет в этом случае…

А будет попа, т.к. твоя программа выжрет огромное кол-во памяти, причем просто так ведь пользователь ни когда не увидит все 10000 фалов…


MZP   (2008-01-16 18:54:00) [4]

Аааааааа! Все понятно :) Спасибо что напомнил. Думаю что вопросов больше нет.
Тебя все простят!!! Ты помог мне и я тебя прощаю. Ты помог другим - они тебя прощают!

Ребята всем большое спасибо за оказанную помощь!
темя закрыта.


Kolan   (2008-01-16 18:51:00) [5]

> Strings

Прочти про абстрактный(да простят меня :) класс TStrings и его потомка, TStringList в справке.

Ими очень удобна пользоваться при работе со списками строк удобнее чем с массивам.


Kolan   (2008-01-16 18:51:00) [6]

> Strings

Прочти про абстрактный(да простят меня :) класс TStrings


MZP   (2008-01-16 18:50:00) [7]

Ну, Рамиль, сам понимаешь, никому не интересно хранить в одной папке 10000 или куда больше - 1000000000 файлов. У меня все по полочкам разложено. Потому и хочу выбирать нужную мне папку и отображать файлы в комоненте TImage.


MZP   (2008-01-16 18:48:00) [8]

Kolan, большое спасибо тебе за пример! Он мне прям путь указывает куда копать дальше :). Я только немного не понял, что ты имеешь в виду под Strings? Это массив ?


Рамиль   (2008-01-16 18:47:00) [9]


> в папке найдено 10 файлов, соответственно нужно создать
> 10 компонентов TImage и отобразить каждый файл.

А если их найдено 10 000?


Kolan   (2008-01-16 18:45:00) [10]

> Ребята, может я неточно сформулировал вопрос :(

Угу.

> соответственно нужно создать 10 компонентов TImage и отобразить
> каждый файл.

См [8]


MZP   (2008-01-16 18:44:00) [11]

Нет скопом тупо выглядит.... кажется.
Ребята, может я неточно сформулировал вопрос :(
Я хочу понять и научиться каждый файл отображать в каждом image. Другими словами: в папке найдено 10 файлов, соответственно нужно создать 10 компонентов TImage и отобразить каждый файл.


Kolan   (2008-01-16 18:43:00) [12]

> т.е. ты рекомендуешь искать файлы с нужным расширением файлов
> функцией FindFirst, FindNext и т.д. грузить в список типа
> TStringList…

Да, правильно понял.

А подскажи пожалуйста, как их отобразить?
Смотря что ты хочешь, я же не телепат.


> Тут я так понимаю0, что нужно «клонировать» компонент типа
> TImage.

Можно и так…


> Но как тогда каждый по отдельности отображать в «клонированных»
> TImage'ах?
> Подскажи пожалуйста!

Допустим имена в Strings: TStrings.

Тогда примерно так:
for I := 0 to Strings.Count — 1 do
begin
 TempImage := TImage.Create(Form);
 TempImage.Parent := Form;
 TempImage.Left := ;
 TempImage.Top := ;
 TempImage.Width := ;
 TempImage.Height := ;
 TempImage.LoagFormFile(Strings[I])
end;


www   (2008-01-16 18:40:00) [13]


>  как их отобразить?

скопом?
например, в листбоксе с OwnerDraw


MZP   (2008-01-16 18:36:00) [14]

т.е. ты рекомендуешь искать файлы с нужным расширением файлов функцией FindFirst, FindNext и т.д. грузить в список типа TStringList...
Кажется понял твои мысли спасибо. А подскажи пожалуйста, как их отобразить?
Тут я так понимаю0, что нужно "клонировать" компонент типа TImage. Но как тогда каждый по отдельности отображать в "клонированных" TImage'ах?
Подскажи пожалуйста!


Kolan   (2008-01-16 18:32:00) [15]

> Т.е. например, в папке «мои изображения» лежит более 10
> файлов, а в папке «мои фото» около 200 файлов.

Ну и пробегайся по всем файлам этой «бох знает какой папки»
Ищи там картинки по расширению
Добавляй их пути TStringList
и дальше делай че шох…


MZP   (2008-01-16 18:26:00) [16]

Ну в обоычный. Я пробовал просто, но мне не очень нравится:

var
array Mymassiv [1..10] of string = ('1.jpg','2.jpg','3.jpg','4.jpg','5.jpg','6.jpg','7.jpg','8.jpg','9.jpg','10.jpg ',)

здесь выводится ещё и имена файлов у меня в программе. В принципе реализовать можно. Но хочку написать программу, которая, бог знает в какой папке лежат изображения и отображать их. Т.е. например, в папке "мои изображения" лежит более 10 файлов, а в папке "мои фото" около 200 файлов.


Правильный_Вася   (2008-01-16 18:22:00) [17]

TImageList для этих целей существует


Kolan   (2008-01-16 18:20:00) [18]

array of TBitmap
?


Германн   (2008-01-16 18:19:00) [19]


> MZP   (16.01.08 18:18)
>
> Всем здрасте! Подскажите пожалуйста, как в массив можно
> засунуть изображения?
>

В какой массив?


Наверх

Титульная страница Поиск, карта сайта Написать письмо