Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Запись графического файла, в прле типа Graphic 
:(
    Опции темы
NiJazz
  Дата 2.2.2005, 21:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Jazz coder
****


Профиль
Группа: Экс. модератор
Сообщений: 2286
Регистрация: 10.8.2003
Где: Москва

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



Я делал так:
Код

(Table1.FieldByName('Field') as TGraphicField).LoadFromFile('File.bmp');

У меня при вызове ApplyUpdates (таблица CachedUpdates) возникает ошибка "Key Violation".
Какие еще есть способы сохранить картинку? Assign?
PM MAIL   Вверх
Alex
Дата 2.2.2005, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 4147
Регистрация: 25.3.2002
Где: Москва

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



А поле в базе у тебя какого типа?


--------------------
Написать можно все - главное четко представлять, что ты хочешь получить в конце. 
PM Skype   Вверх
NiJazz
Дата 3.2.2005, 08:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Jazz coder
****


Профиль
Группа: Экс. модератор
Сообщений: 2286
Регистрация: 10.8.2003
Где: Москва

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



Цитата
А поле в базе у тебя какого типа?

Graphic.
Таблица Paradox, конечно.
PM MAIL   Вверх
User
Дата 3.2.2005, 12:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



Можешь созранять картинку в BLOB поле или сохранять токо путь. Я раньше задавал такой же вопрос. Посмотри мой исходный код:

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
Grids, DBGrids, DBCtrls, Db, DBTables, Clipbrd, StdCtrls, ExtDlgs,
ExtCtrls, BDE;

type
TForm1 = class(TForm)
Table1: TTable;
DataSource1: TDataSource;
DBImage1: TDBImage;
DBGrid1: TDBGrid;
OpenPictureDialog1: TOpenPictureDialog;
Button1: TButton;
Table1ID: TAutoIncField;
Table1NAME: TStringField;
Table1COMEN: TMemoField;
Table1GRAF: TGraphicField;
DBNavigator1: TDBNavigator;
Edit1: TEdit;
Image1: TImage;
Button2: TButton;
Edit2: TEdit;
procedure Button1Click(Sender: TObject);
procedure DBGrid1CellClick(Column: TColumn);
private
{ Private declarations }
public
{ Public declarations }

end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenPictureDialog1.Execute then
begin
table1.edit;
Table1GRAF.LoadFromFile(OpenPictureDialog1.FileName);
Edit1.Text := OpenPictureDialog1.FileName;
table1.post;
end;
end;

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
Image1.Picture.Bitmap.Assign(Table1GRAF);
end;
end.
Добавлено @ 12:53
Или я не так что то понял?
PM MAIL WWW   Вверх
NiJazz
Дата 3.2.2005, 13:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Jazz coder
****


Профиль
Группа: Экс. модератор
Сообщений: 2286
Регистрация: 10.8.2003
Где: Москва

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



User
Пожалуйста, используй теги для кода в будущем.
PM MAIL   Вверх
Vit
Дата 3.2.2005, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vitaly Nevzorov
****


Профиль
Группа: Экс. модератор
Сообщений: 10964
Регистрация: 25.3.2002
Где: Chicago

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



Key Violation - это не с картинкой связано, а с добавлением неуникальной записи по первичному ключу... Убери эту строку (Table1.FieldByName('Field') as TGraphicField).LoadFromFile('File.bmp'); и у тебя всё равно будет возникать эта ошибка


--------------------
With the best wishes, Vit
I have done so much with so little for so long that I am now qualified to do anything with nothing
Самый большой Delphi FAQ на русском языке здесь: www.drkb.ru
PM MAIL WWW ICQ   Вверх
Bes
Дата 4.2.2005, 07:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Почему бы не хранить файлы отдельно, а ссылки на эти файлы в поле.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "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.0640 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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