Форум: "Прочее";
Текущий архив: 2008.12.21;
Скачать: [xml.tar.bz2];
ВнизПодскажите платный компонент для отображения превьюшек Найти похожие ветки
← →
leonidus (2008-10-20 12:44) [0]Ищу сабж, главное условие это скорость работы чтобы даже на слабеньких машинках со встроенной видеокартой все работало гладко, кто что посоветует?
← →
Сергей М. © (2008-10-20 12:46) [1]Кто такие "превьюшки" ?
← →
leonidus (2008-10-20 12:50) [2]Превьюшки это уменьшенные копии изображений, в моем случае фотографий.
← →
clickmaker © (2008-10-20 12:56) [3]TImage ?
← →
{RASkov} © (2008-10-20 12:57) [4]нда... DrawGrid :)
← →
Сергей М. © (2008-10-20 12:58) [5]thumbnails они называются "по-правильному".
А в чем собссно проблема ?
Эксплорер тоже медленно показывает их в режиме "Эскизы" ?
← →
leonidus (2008-10-20 13:33) [6]эксплорер в режиме эскизов работает вполне себе быстро, вот и нужен подобный компонент, юзаю listview но либо делаю что-то не так либо он сам по себе немного тормозит, потому и ищу платный аналог.
← →
clickmaker © (2008-10-20 13:36) [7]> юзаю listview но либо делаю что-то не так
а как делаешь?
← →
Сергей М. © (2008-10-20 13:37) [8]
> делаю что-то не так
С этого и надо было начинать)
← →
Dimka Maslov © (2008-10-20 13:52) [9]Эксплорер, как известно, для ускорения работы в режиме "эскизы страниц", при первом обращении к папке создаёт скрытый файл thumbs.db в котором эти самые "превьюшки" и хранятся. При последующих обращениях иформация читается именно из этого файла, а при необходимости происходит её обновление.
← →
leonidus (2008-10-20 13:58) [10]ListView со стилем vsIcon связан с ImageList в котором хранятся превьюшки, процесс создания которых происходит так:
procedure tform1.AddFile(FilePath: string; Caption: string);
var
TempBmp: TBitmap;
gdiGraphics: TGPGraphics;
Img, Thumb: TGPImage;
W, H: double;
begin
TempBmp:=TBitmap.Create;
TempBmp.Width:=120;
TempBmp.Height:=120;
gdiGraphics:=TGPGraphics.Create();
Img:=TGPImage.Create();
Img:=Img.FromFile(FilePath);
Thumb:=Img.GetThumbnailImage(0, 0, nil, nil);
if(Img.GetWidth()>Img.GetHeight())then
begin
H:=TempBmp.Height;
W:=(H/Img.GetHeight)*Img.GetWidth();
end
else
begin
H:=TempBmp.Height;
W:=(H/Img.GetHeight())*Img.GetWidth();
end;
gdiGraphics:=gdiGraphics.FromHDC(TempBmp.Canvas.Handle);
gdiGraphics.DrawImage(Thumb, trunc(TempBmp.Width/2-W/2), 0, W, H);
form1.ImageList1.Add(TempBmp, nil);
form1.XPListView1.AddItem(Caption, nil);
form1.XPListView1.Items[form1.XPListView1.Items.Count-1].ImageIndex:=form1.ImageList1.Count-1;
Img.Free;
Thumb.Free;
gdiGraphics.Free;
TempBmp.Free;
end;
Собственно сам процесс отображения по скорости меня устраивает не устраивает то что например я не могу определить находится курсор над превьюшкой или над пустым полем (нет такого события у ListView), не устраивает что каждый раз при наведении курсора на превьюшку она моргает, что выделение происходит не контура превьюшки как в Проводнике, а затенение самой превьюшки что выглядит не эстетично, листание тоже происходит с заметной прорисовкой. Собственно у меня нет времени на вылизывании кода потому и было принято решение найти платный аналог в котором автор уже обовсем позаботился.
← →
clickmaker © (2008-10-20 14:01) [11]> не могу определить находится курсор над превьюшкой или над
> пустым полем
GetHitTestInfoAt() ?
← →
Sapersky (2008-10-20 15:44) [12]http://club.telepolis.com/silverpointdev/velvex/index.htm
← →
Eraser © (2008-10-20 16:47) [13]> [10] leonidus (20.10.08 13:58)
TListView позволяет при желании все отрисовывать вручную.
← →
leonidus (2008-10-20 17:59) [14]Sapersky, большое спасибо да вот только тем бесплатный компонент от платного и отличается что нужно скачать кучу всяких дистрибутивов с разных причем сайтов, с бубном попрыгать и может быть заработает, у меня к сожалению не заработало :)
Относительно отрисовки вручную, с удовольствием бы повозился с этим если бы было время, но для меня сейчас оптимальней купить готовый компонент.
← →
Sapersky (2008-10-20 19:26) [15]Я, честно говоря, не пробовал его собирать...
Ну может VirtualShellTools соберутся:
http://www.mustangpeak.net/vstools.htm
Вряд ли все бесплатные компоненты поголовно нерабочие :)
← →
GrayFace © (2008-10-20 23:41) [16]А может все-таки {RASkov} © (20.10.08 12:57) [4]
← →
Германн © (2008-10-21 01:22) [17]
> Sapersky (20.10.08 19:26) [15
> GrayFace © (20.10.08 23:41) [16]
Автор сабжа ищет волшебную палочку. Как вы это не понимаете? Не читали в детстве "Незнайка в Солнечном городе"?
← →
leonidus (2008-10-21 15:35) [18]Германн о какой палочке вы говорите, или вы не допускаете возможности существования такого компонента в природе?
← →
brother © (2008-10-22 09:34) [19]давно бы наняли прогера, он бы Вам все что захотите сделал...
← →
Плохиш © (2008-10-22 10:30) [20]
> leonidus (21.10.08 15:35) [18]
> вы не допускаете возможности существования такого компонента в природе?
Почему же, допускаем, только делфимастер не является поисковой системой.
← →
pasha_golub © (2008-10-22 12:01) [21]Из набора DevExpress можно попробовать. Гриды там так уж точно поддерживают все что жена пожелает... душа в смысле
← →
Германнн (2008-10-23 02:47) [22]
> Германн © (21.10.08 01:22) [17]
> Автор сабжа ищет волшебную палочку. Как вы это не понимаете?
> Не читали в детстве "Незнайка в Солнечном городе"?
Дядя, ты дурак?
← →
Германн © (2008-10-23 02:58) [23]Провокаторов - на фиг!
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.12.21;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.045 c