Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > Базы данных
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 12.06.2009, 15:28
Rofar Rofar вне форума
Прохожий
 
Регистрация: 17.05.2009
Сообщения: 23
Репутация: 10
Вопрос Добавление в таблицу Paradox картинок и отображение их в DBImage

Здраствуйте! Есть маленький вопросик) помогите плз, очень нужно...
Например есть база, в ней два поля Opisanie(типа alpha) и Foto (типа Graphic). Как зделать так чтобы при нажатии кнопки пользователь мог выбрать из файлов нужную картинку(OpenPictureDialog) нажать ОК и эта картинка сохранилась в таблице для первой записи и отображалась в DBImage...
Ответить с цитированием
  #2  
Старый 13.06.2009, 16:50
Rofar Rofar вне форума
Прохожий
 
Регистрация: 17.05.2009
Сообщения: 23
Репутация: 10
По умолчанию

В нэте нарыл вот этот код
Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
procedure TForm1.Button1Click(Sender: TObject);
begin //загрузка из файла
if OpenPictureDialog1.Execute then begin
Table1.Edit;
dbImage1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
table1.Post;
end;
end;
 
procedure TForm1.TableBeforePost(DataSet: TDataSet);
var BLOB:TBlobStream;
begin //сохранение картинки в базе
BLOB:=TBlobStream.Create(TBlobField(Table1),bmWrite);
try
Image1.Picture.Graphic.SaveToStream(BLOB);
finally BLOB.Free; end;
end;
Admin: Пользуемся тегами!

если есть у него недостатки плз напишите!!!!

Последний раз редактировалось Admin, 13.06.2009 в 22:16.
Ответить с цитированием
  #3  
Старый 14.06.2009, 12:46
Rofar Rofar вне форума
Прохожий
 
Регистрация: 17.05.2009
Сообщения: 23
Репутация: 10
По умолчанию

Пожалуйста найдите в этом коде ошибки если они есть...

Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
procedure TForm1.SpeedButton1Click(Sender: TObject);
 
var fEdit:boolean;
 
begin //загрузка из файла
 
  if OpenPictureDialog.Execute then begin
 
    if Table.State=dsBrowse then begin Table.Edit; fEdit:=true; end
 
    else fEdit:=false;
 
    Image.Picture.LoadFromFile(OpenPictureDialog.FileName);
 
    if fEdit then Table.Post;
 
  end;
 
end;
 
 
 
procedure TForm1.TableBeforePost(DataSet: TDataSet);
 
var BLOB:TBlobStream;
 
begin //сохранение картинки в базе
 
  BLOB:=TBlobStream.Create(TableImage,bmWrite);
 
  try
 
   Image.Picture.Graphic.SaveToStream(BLOB);
 
  finally BLOB.Free; end;
 
end;
 
 
 
procedure TForm1.DataSourceDataChange(Sender: TObject; Field: TField);
 
var BLOB:TBlobStream;
 
Code:word;
 
begin //считывание картинки из базы
 
  if DataSource.State=dsBrowse then begin
 
  BLOB:=TBlobStream.Create(TableImage,bmRead);
 
  try
 
   BLOB.Read(Code,SizeOf(Code)); BLOB.Seek(0,0);
 
   case Code of
 
    $4D42: begin
 
      Image.Picture.Graphic:=TBitmap.Create;
 
      Image.Picture.Graphic.LoadFromStream(BLOB);
 
    end;
 
    $D8FF: begin
 
      Image.Picture.Graphic:=TJPEGImage.Create;
 
      Image.Picture.Graphic.LoadFromStream(BLOB);
 
    end;
 
   end;
 
   finally BLOB.Free; end;
 
  end;
 
end;
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 15:46.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025