|  | 
 
 | 
| 
 | |||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны | 
|  | 
|  | Опции темы | Поиск в этой теме | Опции просмотра | 
| 
			 
			#1  
			
			
			
			
		 | |||
| 
 | |||
|  Как сохранить Bitmap в Record Помогите! Есть запись типа TRecord, нужно в нее сохранить небольшой рисунок, возможно ли такое! Сам пробовал, никак не получается! | 
| 
			 
			#2  
			
			
			
			
		 | ||||
| 
 | ||||
|   Есть ли осмысленная цель у поставленной задачи? Может быть достаточно такого класса как TBitmap? | 
| 
			 
			#3  
			
			
			
			
		 | |||
| 
 | |||
|   Просто у меня в записи хранятся информация различного вида и в том числе хочу сохранить туда рисунок! Помогите пожалуста кто может! | 
| 
			 
			#4  
			
			
			
			
		 | |||
| 
 | |||
|   Почему задающие вопрос не могут понять, что та скудная информация в вопросе не позволяет ответить полноценно. От того и получают ответы в этом же стиле или не получают ответы вовсе. 1. TRecord - это класс или record? Если record, то какова его структура? 2. Откуда будут браться картинки? 3. Куда сохранять? В файл, поток, память, буфер обмена, СУБД? А если без словоблудия, то "какой вопрос, такой ответ": Сказано же выше, что можно использовать TBitmap, который имеет методы SaveToFile и SaveToStream. Последний раз редактировалось san-46, 10.06.2008 в 10:45. | 
| 
			 
			#5  
			
			
			
			
		 | |||
| 
 | |||
|   В общем: TMaterials = record Name, Article: String[100]; Manufacturer:String[20]; Image: TBitMap; End; Картинка будет открываться из файла в TImage и из TImage сохраняться в TMaterials.Image | 
| 
			 
			#6  
			
			
			
			
		 | |||
| 
 | |||
|   Ага, это уже "ближе к телу". Код: Materials.Image := TBitMap.Create; Materials.Image.Assign(Image1.Picture.Bitmap); Только надо не забыть освободить память (Materials.Image.Free) тогда, когда рекорд уже не будет нужен. | 
| 
			 
			#7  
			
			
			
			
		 | |||
| 
 | |||
|   Спасибо, сегодня попробую! | 
| 
			 
			#8  
			
			
			
			
		 | |||
| 
 | |||
|   Запись происходит, только картинка туда не записывается!!! А я хочу чтоб туда писалась вся картинка! Чтоб в одном файле хранились и записи и числа и картинки! | 
| 
			 
			#9  
			
			
			
			
		 | |||
| 
 | |||
|   "только картинка туда не записывается". Куда "туда" и откуда понятно, что не записывается?  Неужели трудно сделать над собой усилие и обрисовать ситуацию конкретно? Общие слова ничего другим не объясняют. Например, опубликуйте код, в котором вы сохраняете записи, числа и картинки - это будет конкретно. Можно будет проанализировать чего происходит и в чем проблема. Из того чего догадался (наверное). Если вы записываете свой record TMaterials как запись в типизированный файл (file of TMaterials), то картинка, естественно, не будет записываться, т.к. в файл будет записана лишь ссылка на изображение (в элементе структуры Image хранится только ссылка). Необходимо record преобразовать в class и записывать картинки его методами. Последний раз редактировалось san-46, 10.06.2008 в 23:49. | 
| 
			 
			#10  
			
			
			
			
		 | |||
| 
 | |||
|   Задача: Создаем файл, например baza.txt Создаем запись TRecord Код: Type
 TMaterials = record
  Name, Artaicle, Manufactured = String[100];
  Image: TBaitMap;
 End;
Var
    Materials: TMaterials;
    MaterialsFile: File of TMaterials;Картинку к примеру загрузили из файла и поместили ее в TImage. Name, Artaicle, Manufactured берем из TEdit. Image из TImage. Далее присваиваем всем переменным их значения и записываем в файл. Проблема в том, что нужно записать TBitMap в файл!! Код: AssignFile(MaterialsFile,'C:\Baza.txt'); ReWrite(MaterialsFile); Materials.Name:=Edit1.Text; Materials.Article:=Edit2.Text; Materials.Manufactured:=edit3.Text; Materials.Image:=Image1.Picture.BitMap; Write(MaterialsFile,Materials); CloseFile(MaterialsFile); В этом виде он записывает так сказать ссылку на Image1 и если удалить картинку из Image1, то при чтении из файла записи Materials.Image и помещения ее например в Image2 возникает ошибка! Цель: Записать всю картинку целиком в эту запись! Если нужно записать все это в Class то приведите пример пожалуста, не приходилось работать с ним! Последний раз редактировалось Admin, 12.12.2010 в 13:23. | 
| 
			 
			#11  
			
			
			
			
		 | |||
| 
 | |||
|   В прицепе работоспособный набросок класса, который сохраняет значения своих полей (в т.ч. и картинку) в файл. Читать из файла тоже может. | 
| Этот пользователь сказал Спасибо san-46 за это полезное сообщение: | ||
|  
tapky666 (10.12.2013)
 | ||
| 
			 
			#12  
			
			
			
			
		 | |||
| 
 | |||
|   Большое спасибо, попробовал! Все работает! Буду кодить дальше ))) | 
| 
			 
			#13  
			
			
			
			
		 | |||
| 
 | |||
|   Просто спасибо за пример |