Создаю форму и открываю датасет. frm_listCases := Tfrm_listCases.Create(application); frm_listCases.qryDialog.SQL.Text := 'select * from uslug_group where length(img)>0 order by name'; //Выбираю где Blob не пустое. frm_listCases.qryDialog.Open; frm_listCases.qryDialog.FieldByName('img').SetFieldType(ftGraphic); //Устанавливаю тип поля. frm_listCases.qryDialog.FieldByName('img_photo_name').SetFieldType(ftString);
В таблице DrawGraphicData =true; ShowImageAndText = true;
Все комбинации перепробовал, в том числе в датасете вручную создал поле img типа qryDialogimg: TGraphicField; Картинки в базе у меня разношерстные, в том числе bmp, jpeg, png... Но они нормально отображаются в TDBImage привязанному к этому датасету. В ячейке же таблицы отображается только один рисунок я даже не помню какого типа он был (bmp или png) - я его вставлял со скриншота в Яндекс браузере через буфер обмена прямо в blob поле через TMemoryStream. И его тип я не знаю. Что то мне кажется что туда класть нужно только одинаковые и "правильные" картинки и тогда это должно работать. А если так, то мне это не подходит и я буду использовать отображение картинок не в DBGridEh а в чем нибудь другом. Вопрос: DBGridEh не способен отображать все типы картинок? Какие есть мнения и знания?
|