kvantum Опубликовано 14 января, 2015 Поделиться Опубликовано 14 января, 2015 Здравствуйте ! Задача состоит в загрузке в элемент списка картинки из потока и установке значения текстовому свойству StyleBook имеет вид, представленный на скриншоте. Присвоение значения свойству userlogin реализуется как : Item.StylesData['UserLogin.Text']:=FieldByName('Login').AsString; Как по аналогии загрузить изображение в свойство userimage (по типу Image.Bitmap.LoadFromStream(Stream)) ? Ссылка на комментарий
0 xenon54 Опубликовано 14 января, 2015 Поделиться Опубликовано 14 января, 2015 var o : TImage; begin O := Panel1.FindStyleResource('userimage'); if Assigned(O) then begin o.bitmap.loadfromstream(stream); end; end; Попробуй так. Ссылка на комментарий
0 kvantum Опубликовано 14 января, 2015 Автор Поделиться Опубликовано 14 января, 2015 И ... не работает. FindStyleResource возвращает nil Ссылка на комментарий
0 Администраторы Brovin Yaroslav Опубликовано 14 января, 2015 Администраторы Поделиться Опубликовано 14 января, 2015 Добрый день, Например так: Item.StylesData['userimage.bitmap'] := TValue.From<TBitmap>(MyBitmap); Ссылка на комментарий
0 kvantum Опубликовано 14 января, 2015 Автор Поделиться Опубликовано 14 января, 2015 (изменено) Спасибо, Ярослав, Вы как всегда на высоте! Завершающий вопрос : в каком методе уничтожать созданную переменную Bitmap ? Stream := CreateBlobStream(FieldByName('Data'), bmRead); try Bitmap:=TBitmap.Create; Bitmap.LoadFromStream(Stream); Item.StylesData['userimage.bitmap'] := TValue.From<TBitmap>(Bitmap); // Bitmap.Free; except end; Stream.Free; Изменено 14 января, 2015 пользователем Brovin Yaroslav Ссылка на комментарий
0 Администраторы Brovin Yaroslav Опубликовано 14 января, 2015 Администраторы Поделиться Опубликовано 14 января, 2015 Не за что, обращайтесь. TValue не создает копии вашего изображения. Поэтому лучше хранить изображение отдельно и удалять его после того, как изображение больше не нужно будет выводить в стилевой объект. Ссылка на комментарий
Вопрос
kvantum
Здравствуйте !
Задача состоит в загрузке в элемент списка картинки из потока и установке значения текстовому свойству
StyleBook имеет вид, представленный на скриншоте.
Присвоение значения свойству userlogin реализуется как :
Item.StylesData['UserLogin.Text']:=FieldByName('Login').AsString;
Как по аналогии загрузить изображение в свойство userimage (по типу Image.Bitmap.LoadFromStream(Stream)) ?
Ссылка на комментарий
5 ответов на этот вопрос
Рекомендуемые сообщения