Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как передать в процедуру ИЗОБРАЖЕНИЕ? [D6, IB5.x]


yuli ©   (2003-02-04 14:40:00) 

Задача - учет сотрудников на фирме. Не могу сделать Изменение анкеты. Чтоб изменить карточку, выставить новую фотку и ПОСЛЕнажатия кнонки ОК данные занеслись в Базу. Помогите, очень надо, уже дымлюсь! Спасибо.


Digitman   (2003-02-05 11:14:00) [1]

var stream: TMemoryStream;
..

stream := TMemoryStream.Create;
try
stream.Size := IBStoredProc.Param[..].GetDataSize;
IBStoredProc.Param[..].GetData(stream.Memory);
..
Image.Picture.Bitmap.LoadFromStream(stream);
finally
stream.Free;
end;


yuli   (2003-02-05 10:21:00) [2]

еще один глупый вопрос - а как из параметра процедуры считать данные в Image.Picture.Bitmap?
SaveToStream у TParam нету


yuli   (2003-02-04 17:28:00) [3]

Вроде что-то жужжит, в базу пишет, осталось работы два локтя по карте, спасибо большое. Будем ковырять дальше. ОГРОМАДНОЕспасибо!


D   (2003-02-04 16:41:00) [4]

Param[0].Assign(BitMap) ?


Digitman   (2003-02-04 16:31:00) [5]

ну что-то типа такого :


var stream: TMemoryStream;
..

stream := TMemoryStream.Create;
try
Image.Picture.Bitmap.SaveToStream(stream);
stream.Position := 0;
IBStoredProc.Prepare;
IBStoredProc.Param[0].LoadFromStream(stream, ftBlob);
// старт транзакции
try
IBStoredProc.ExecProc;
// подтверждение транзакции
except
// откат транзакции
raise;
end;
finally
stream.Free;
end;



yuli   (2003-02-04 16:05:00) [6]

а можно пример, как из Image.Picture.Bitmap передать битмап в IBStoredProc.Param[0], ну не получается...


Digitman   (2003-02-04 15:04:00) [7]


> нужно передать Image.Picture.Bitmap в базу как параметр
> UDF


А зачем UDF-то ? Каково назначение UDF в этой цепочке ?

Клиент на своей стороне может создать объект класса TBlobStream, ассоциированный с Blob-полем, предназначенным для хранения картинки (см. метод CreateBlobStream)

Поскольку класс TBitmap имеет методы SaveToStream/LoadFromStream, ничто не мешает передать в эти методы параметром тот самый экз-р объекта TBlobStream.


yuli   (2003-02-04 14:49:00) [8]

нужно передать Image.Picture.Bitmap в базу как параметр UDF, но вылазит ошибка несовпадения данных либо ничего не передается. Поле типа BLOB.
И обратная задача - из поля, возвращаемого UDF скопировать данные в Image.Picture.Bitmap

То есть нужно хранить картинки в базе и показывать их в Image.

Дайте пример плиз!


D   (2003-02-04 14:46:00) [9]

В какую проц-ру?

После нажатия кнопки - Dataset.Post.


Наверх

Титульная страница Поиск, карта сайта Написать письмо