Как создать и загрузить картинку в дельфи
Мне необходимо превратить картинку объекта класса TImage в переменную, которую я в случае чего могу загрузить обратно и сделать ее картинкой того же объекта, т.к. он периодически изменяется.
Отслеживать
задан 23 мар 2017 в 4:24
user240610 user240610
31 3 3 бронзовых знака
Приведите хотя бы какой-то минимальный воспроизводимый пример
23 мар 2017 в 4:49
А чем вам объект класса TImage не переменная ?
23 мар 2017 в 5:24
при создании прокнрммы у меня не получается сделать дополнительную картинку такого рода. то есть она суцествует, но при попытке к ней обратиться дельфи вылетает
23 мар 2017 в 7:27
Приведите минимальный самодостаточный код
23 мар 2017 в 8:10
1 ответ 1
Сортировка: Сброс на вариант по умолчанию
Весь код я писать не буду, но рассмотрим случай, когда картинка в BMP, тогда её тип будет TBitmap .
b : TBimap; b := TBitmap.Create; try b.loadfromfile('a.bmp'); except // не забудьте обработчик исключения end
Данные можно хранить в динамических массивах array of TBitmap
var ab : array of TBitmap begin SetLength(ab, 1); ab[0] := b; end;
Либо в классе TList .
List.Add(b);
Либо в TStringList .
var Sl : TStringList; begin Sl.AddObject('filename', TObject(b)); end;
Тут обращение к картинке с использованием типа происходит
TBitmap(sl.Objects[0])
Этот вариант предпочтительнее так как можно сохранить имя файла.
Можно создать свою структуру и добавлять её в TList / TStringList
Image1.Picture.Graphic := b;
У bitmap есть методы сохранения в файл и поток, также как и TPicture (Image1.Picture)
Можно для сохранения использовать TMemoryStream , но это уже тема отдельная.
Таким же образом можно и картинки других типов хранить (jpg, png. ) Нужно не забывать также освобождать память.
Как вставить картинку?
Как вставить картинку в reportf?
Нужно в отчет вставить картинку,использую reportf.
Как вставить картинку на форму
Подскажите как вставить картинку на форму? Кидаю обьект image, а дальше что?
Как вставить картинку в текстовой редактор
Задача следующая. Есть компонент — текстовой редактор (например, TMemo или еще что-нибудь в этом.
КАК в Panel1 вставить картинку и вместе с картинкой двигать
КАК в Panel1 вставить картинку и вместе с картинкой двигать
Почетный модератор
11525 / 4320 / 448
Регистрация: 12.06.2008
Сообщений: 12,412
На вкладке Additional есть элемент TImage
Регистрация: 09.10.2008
Сообщений: 28
Супер-модератор
8783 / 2536 / 144
Регистрация: 07.03.2007
Сообщений: 11,873
qandrew, нечего сказать — нечего оффтопить.
если будешь использовать линейку компонентов GR32, то можно так:
bool __fastcall LoadImage(TImage32* Image, AnsiString Path) < if(Path.LowerCase().Pos("jpg"))< TJPEGImage* tmp = new TJPEGImage(); tmp->CompressionQuality = 100; try< tmp->LoadFromFile(Path); Image->Bitmap->Assign(tmp); >catch(. ) < delete tmp; return false; >delete tmp; >else if(Path.LowerCase().Pos("bmp"))< try< Image->Bitmap->LoadFromFile(Path); >catch(. ) < return false; >> return true; >
gr32.rar (1.15 Мб, 750 просмотров) |
Регистрация: 17.04.2012
Сообщений: 14
Это же форум для новичков?
не обессудьте уж,видно я слишком новичок.
Я так и не понял что можно сделать с программным кодом,я почитал его,попробовал вставить фрагмент,полностью пробовал вставить,но что то ничего путного так и не вышло.
А на вкладке Additional Timage я так и не нашел,там есть только Image(ExtCtrls)
Заранее большое спасибо.
4311 / 1422 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
Сообщение от TRamL
на вкладке Additional Timage я так и не нашел,там есть только Image(ExtCtrls)
Это и есть Image.
Регистрация: 17.04.2012
Сообщений: 14
Сообщение от BumerangSP
Это и есть Image.
спасибо,а как картинку в него затащить подскажи пожалуйста
4311 / 1422 / 463
Регистрация: 16.12.2010
Сообщений: 2,939
Записей в блоге: 3
В свойстве picture. Там всего-то нужно ее на диске отыскать.
Регистрация: 17.04.2012
Сообщений: 14
спасибо огромное,я просто год назад практику проходил на delphi, а тут надо писать базу данных, а я забыл слишком многое, выручил)благодарствую =)
Добавлено через 54 минуты
ещё вопрос,все время прошедшее от прошлого ответа,искал как сделать картинку немного прозрачной?
Transparent ставил true, но оказывается этого мало
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь
Как вставить в пустой Image картинку при нажатии кнопки?
Добрый день. Помогите пожалуйста. Как написать процедуру, чтобы при нажатие кнопки появлялась.
Как вставить в пустой Image картинку при нажатии кнопки?
Ребята нужна помощь, хочу при каждом клике на фамилию игрока отдельное фото, как это сделать?
Вставить картинку
Здравствуйте, у меня такой вопрос, мне надо вставить картинку в Delphi. У меня есть ComboBox с 10.
Вставить картинку в memo
Я нашел скин который используется и вставил его в свой проект. Но картинки которые вставлены в.
Или воспользуйтесь поиском по форуму:
Как вставить картинку в Delphi ?
Как вот сюда вставить картинку?
Лучший ответ
Слева в object inspector найди свойство picture щелкни справо от него два раза и выбери картинку в формате bmp или jpg
sweetDoveМастер (2409) 11 лет назад
слушай, а если кортика не вся туда попадает, как это исправить?((
расширь поля
Остальные ответы
Учим ангельский, а потом читаем свойства объекта
Сергей КириенкоЗнаток (307) 8 лет назад
А ты учи русский
Не гнобите парня, все когда то только начинали кодить. В uses допиши JPEG
Делаем загрузку:
procedure TForm1.Button1Click(Sender: TObject);
begin
Image1.Picture.LoadFromFile(‘anonimous.jpg’);
end;
Где anonimous.jpg — это наша картинка, она должна лежать локально в том же пути где и твой проект либо укажи путь до картинки.
Так же можно определив путь %TEMP%, скачивать туда картинку и от туда её подгружать.
Так же можно картинку вызывать из ресурсного файла.
Как добавить на форму картинку?
Используй компонент Image закладка Additional, свойство Picture.
Последний раз редактировалось Zylex, 12.04.2008 в 15:08 .
« Предыдущая тема | Следующая тема »
Линейный вид
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.