Текущий архив: 2005.03.06;
Скачать: CL | DM;
Вниз
Присвоение изображения ячейки в DBGrid Найти похожие ветки
← →
Dyusha © (2005-02-04 21:50) [0]Здравствуйте Уважаемые Мастера!!! У меня есть такой код
ADOQuery1.FieldByName("Otpusk").AsString:=Edit1.Text; (т.е присваивается полю Otpusk значение Edit1)
далее у меня в DBImage загружается картинка
if openpicturedialog1.Execute then dbimage1.Picture.LoadFromFile(openpicturedialog1.FileName);
теперь надо столбцу FOTO присвоить эту картинку, я делаю это так
ADOQuery1.FieldByName("FOTO").AsBCD:=dbimage1.Picture;
Компилятор мне выдает следующую ошибку: «Incompatible types: "TBcd" and "TPicture"», пожалуйста, помогите присвоить изображение столбцу, сколько методов перепробовал, не получается.
Заранее благодарю за предоставленную помощь
← →
Val © (2005-02-04 21:54) [1]см. TBlobField.LoadFromFile и т.д.
← →
Dyusha © (2005-02-04 21:58) [2]на прямую никак нельзя присвоить? как это происходит с текстом
← →
Val © (2005-02-04 22:02) [3]напрямую блоб загружается в поле из файла или из потока.
← →
Dyusha © (2005-02-04 22:11) [4]Пропобал еще в наглую загружать в активную строку изображение
if openpicturedialog1.Execute then
dbimage1.Picture.LoadFromFile(openpicturedialog1.FileName);
adoquery1.Post;
однако ADOQuery ругается на то, что открыт не для Edit или Read,открываю ADOQuery.Edit перед if никакой реакции не последовало :-((
← →
fess © (2005-02-04 22:19) [5]Привет! Создай блоб поле FOTO и примени следующий алгоритм:
Bitmap := TMemoryStream.Create;
Image1.Picture.Bitmap.SaveToStream(Bitmap);
dm.ADOQueryBlob.Active:=false;
dm.ADOQueryBlob.SQL.Clear;
dm.ADOQueryBlob.SQL.Add("UPDATE Table1 SET [Foto]=:Foto WHERE Id_Answer = "+IntToStr(Id_Answer));
dm.ADOQueryBlob.Parameters.ParamByName("Foto").LoadFromStream(Bitmap, ftBlob);
dm.ADOQueryBlob.ExecSQL;
BitMap.Free;
← →
Dyusha © (2005-02-04 22:26) [6]таблица создавалась в Access, для поля Foto был применен тип данных: "Поле объекта OLE". В DBGrid"e в поле Foto стоит <Blob>, значит тип уже Blob/
Кстати Bitmap какого типа объявляется и что за dm???
← →
fess © (2005-02-04 22:33) [7]:)
dm это Data Module...
Если ты просто кинул на форму ADOQuery, то можно обойтись и без dm!
Var Bitmap : TMemoryStream;
Все правильно - поле у тебя нужного формата...
← →
Dyusha © (2005-02-04 22:37) [8]FESS и Val большое спасибо буду пробовать, если не трудно оставьте свое мыло, вдруг возникнут вопросы...... the best :-))
Страницы: 1 вся ветка
Текущий архив: 2005.03.06;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.044 c