Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Изображение в форме, Отображение .bmp файла в форме 
V
    Опции темы
Novichek27
Дата 8.8.2010, 22:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 24.4.2010

Репутация: 1
Всего: 1



Приветствую всех.

Создал форму,  накидал  компоненты DBText, DBEdit. С помощью ADO подключился к базе MS Access. В одной таблице создал поле с форматом "Поле объекта OLE" задал для него файл .bmp.
Далее на форму кидаю DBImage и указываю DataSource и DataField.

Запускаю на выполнение выходит ошибка "Project Project1.exe raised exception class EInvalidGraphic with message 'Bitmap image is not valid'. Process stopped. Use Step or Run to continue.

Какой тип данных надо указать в поле таблицы? Или что прописать надо. Не получается в общем картинки из таблицы отображать на форме.

Подскажите пожалуйста как реализовать это...

Пробовал:

Image.Picture.assign(QAll.FieldByName('FieldName'));

Не выходит

Это сообщение отредактировал(а) Novichek27 - 8.8.2010, 22:40
PM   Вверх
Данкинг
Дата 8.8.2010, 23:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 35
Всего: 130



А каким образом помещаешь картинку в Ole-поле?

Добавлено через 33 секунды
Цитата(Novichek27 @  8.8.2010,  23:20 Найти цитируемый пост)
Image.Picture.assign(QAll.FieldByName('FieldName'));

Ну да, конечно. smile

Добавлено через 9 минут и 28 секунд
Попробуй загружать картинки в таблицу программно:
Код

procedure FileToBlob(BlobField: TField; FileName: string);
var S : TStream;
    FileS : TFileStream;
begin
  S:=BlobField.DataSet.CreateBlobStream(BlobField, bmReadWrite);
  FileS:=TFileStream.Create(FileName, fmOpenRead);
  try
    S.CopyFrom(FileS, FileS.Size);
  finally
    FileS.Free;
    S.Free;
  end;
end;
...
FileToBlob(AdoTable.FieldByName('jpg'),'c:\sss.bmp');




--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
БелАмор
Дата 10.8.2010, 00:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 209
Регистрация: 10.6.2010
Где: Россия

Репутация: нет
Всего: 17



Цитата(Данкинг @  8.8.2010,  23:14 Найти цитируемый пост)
procedure FileToBlob(BlobField: TField; FileName: string);
var S : TStream;
    FileS : TFileStream;
begin
  S:=BlobField.DataSet.CreateBlobStream(BlobField, bmReadWrite);
  FileS:=TFileStream.Create(FileName, fmOpenRead);
  try
    S.CopyFrom(FileS, FileS.Size);

Можно проще:
Код

procedure FileToBlob(BlobField: TField; FileName: string);
begin
  (BlobField as TBlobField).LoadFromFile(FileName);
end;

PM   Вверх
Novichek27
Дата 25.8.2010, 20:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 92
Регистрация: 24.4.2010

Репутация: 1
Всего: 1



Спасибо.
Вроде разобрался.
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Базы данных и репортинг"
Vit
Петрович

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами


Обязательно указание:

1. Базы данных (Paradox, Oracle и т.п.)

2. Способа доступа (ADO, BDE и т.д.)


  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • Вопросы по SQL и вопросы по базам данных не связанные с Дельфи задавать здесь

FAQ раздела лежит здесь!


Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема »


 




[ Время генерации скрипта: 0.0496 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.