outofdate Опубликовано 3 марта, 2016 Поделиться Опубликовано 3 марта, 2016 Здравствуйте! Подскажите, пожалуйста, как вытащить TBitmap нужного скейла из TImageList? Цитата Ссылка на комментарий
0 ophion Опубликовано 3 марта, 2016 Поделиться Опубликовано 3 марта, 2016 Возможно так var Item: TCustomBitmapItem; Size: TSize; begin ImageList1.BitmapItemByName('тут пишем Source item name (указывается при добавлении нового изображения) как правило представлент точно так же как имя файла изображения', Item, Size); Image1.Bitmap.Assign(Item.Bitmap); end; Цитата Ссылка на комментарий
0 outofdate Опубликовано 4 марта, 2016 Автор Поделиться Опубликовано 4 марта, 2016 Возможно так Интересно. То есть Size это конкретно размер, например для скейла 3(который мне возвращает Canvas на моем устройстве) это будет 112*112? На других устройствах разрешением и dpi пониже будет скейл 1 или 2 и размеры, скажем, 56*56 и 84*84 соответственно? Я пишу в основном на жаве под андроид и там, как кажется, с этим гораздо проще и вообще практически полное управление всеми элементами. Задача же у меня гораздо выше, скажем пихать полученные битмапы в ListView(аватарки)... Но это уже другая тема. Цитата Ссылка на комментарий
0 kami Опубликовано 4 марта, 2016 Поделиться Опубликовано 4 марта, 2016 А зачем получать битмапы, чтобы их пихать в ListView? ImageIndex уже отменили? Цитата Ссылка на комментарий
0 outofdate Опубликовано 4 марта, 2016 Автор Поделиться Опубликовано 4 марта, 2016 А зачем получать битмапы, чтобы их пихать в ListView? ImageIndex уже отменили? Я новичек в дельфях и макаке и не очень понимаю как у них это работает. Цитата Ссылка на комментарий
0 RoschinSpb Опубликовано 17 марта, 2016 Поделиться Опубликовано 17 марта, 2016 ImageList1.Bitmap(Size, Index); Возвращает картинку растянутую до указанного размера. Размер указывается в физических пикселях, т.е. учитывать масштаб надо самостоятельно (этот метод ни чего не знает о масштабе канвы). При этом выбирается наиболее подходящая по размеру картинка из тех, что имеется. Есть еще ImageList1.Draw который рисует на канве картинку. Там учитывается масштаб канвы. Т.е. если указали прямоугольник 16x16 а TCanvas.Scale = 2, то будет выбрана картинка 32x32 если имеется. >> практически полное управление всеми элементами Очевидно, в ImageList вы можете самостоятельно управлять всеми элементами иначе каким образом туда попадают данные из редактора. Может поможет статья. >> скажем пихать полученные битмапы в ListView Не пробовали посмотреть демку что ли? Там есть добавление пунктов в ListView в Run-TimeC:\Users\Public\Documents\Embarcadero\Studio\18.0\Samples\Object Pascal\Multi-Device Samples\User Interface\ImageList\ImageListDemo.dpr Rusland 1 Цитата Ссылка на комментарий
Вопрос
outofdate
Здравствуйте! Подскажите, пожалуйста, как вытащить TBitmap нужного скейла из TImageList?
Ссылка на комментарий
5 ответов на этот вопрос
Рекомендуемые сообщения
Присоединяйтесь к обсуждению
Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.