Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.02.25;
Скачать: CL | DM;

Вниз

Как вставить в DBImage1 картинку программным путем?   Найти похожие ветки 

 
Arthur1   (2004-01-29 13:39) [0]

Как вставить в DBImage1 картинку программным путем?


 
Val   (2004-01-29 14:44) [1]

1.загрузить из файла
2.загрузить из буфера обмена
3.загрузить из БД


 
Arthur1   (2004-01-29 15:05) [2]

Мне нужно по сути загрузить картинку из файла (или из Image) в базу данных. Если точнее, то меня в полне устроит что-то типа
Table1.Fieldbyname("s1").AsString:="AAABBBCCC", но только не со строкой, а с картинкой. Вроди из хелпа понял, что нужно
Table1.Fieldbyname("s1").AsVariant:= ???, но что конкретно ставить вместо ???, я не знаю.

Может есть другие пути (или варианты)?


 
Val   (2004-01-29 15:54) [3]

Нужно иметь для этого в таблице базы данных BLOB-поле для хранения изображения. У BLOB-поля есть метод для загрузки данных с диска.


 
Val   (2004-01-29 16:00) [4]

Хм..хорошо сказал...
У BLOB-поля ...
Имелся ввиду класс TBlobField, экземпляр которого будет представлять Ваше BLOB-поле в приложении.


 
Arthur1   (2004-01-29 16:11) [5]

А как это реализовать конктретно? Пример, если можно.
Я создал парадоксовкую таблицу, побвязал таблицу к DBImage и всё работает. Но в DBImage могу вставить только из буфера, а это меня не устраивает - нужно из файла.


 
Ega23   (2004-01-29 16:14) [6]

FileName:=ExtractFilePath(ParamStr(0))+"FaceImg.jpg";
TBLOBfield(Query1.FieldByName("PersFaceImg")).SaveToFile(FileName);
Image1.LoadFromFile(FileName);


 
Reindeer Moss Eater   (2004-01-29 16:14) [7]

Класс TBlobField
Метод LoadFromFile


 
kvp   (2004-01-29 16:22) [8]

У меня сделано так:
procedure TFCxema.DBImage1DblClick(Sender: TObject);
begin
If Table1.ReadOnly=False then begin
If OpenPictureDialog1.Execute then
begin
Table1.Edit;
DBImage1.Picture.LoadFromFile(OpenPictureDialog1.FileName);
Table1.Post;
end; end;
end;


 
GSVSerg   (2004-01-29 16:28) [9]

kvp © (29.01.04 16:22) [8]
А если файл JPEG?


 
Val   (2004-01-29 16:29) [10]

>Ega23 © (29.01.04 16:14) [6]
Пример несколько сбивающий с толку:
1. Почему не использовать OpenPictureDialog?
2. Тревожное приведение TBLOBfield(), лучше as TBlobField, мне кажется.
3. Почему не использовать DBImage?
4. То что вы делаете, можно сделать с помощью потоков, дабы не тормозить приложение дисковыми операциями.


 
Ega23   (2004-01-29 16:39) [11]


> Val © (29.01.04 16:29) [10]
> >Ega23 © (29.01.04 16:14) [6]
> Пример несколько сбивающий с толку:
> 1. Почему не использовать OpenPictureDialog?
> 2. Тревожное приведение TBLOBfield(), лучше as TBlobField,
> мне кажется.
> 3. Почему не использовать DBImage?
> 4. То что вы делаете, можно сделать с помощью потоков, дабы
> не тормозить приложение дисковыми операциями.


Этот пример - выгрузка фотографии сотрудника из БД. По условиям задачи необходимо чтобы фото хранилось в той же директории, что и exe и с конкретным именем.
Также фото должно изображаться на форме.


 
Reindeer Moss Eater   (2004-01-29 16:40) [12]

А по условиям вопроса картинка из файла должна стать видна в T DBImage


 
Ega23   (2004-01-29 16:43) [13]


> А по условиям вопроса картинка из файла должна стать видна
> в TDBImage

DBImage1.Picture.LoadFromFile(FileName).
или
DBImage1.LoadImage;



Страницы: 1 вся ветка

Текущий архив: 2004.02.25;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.034 c
7-80306
Виктор
2003-12-06 19:48
2004.02.25
Проблема с DLL


3-79598
GIL
2004-02-02 14:54
2004.02.25
update IBQuery


1-79753
Слэш
2004-02-12 08:33
2004.02.25
Форма StayOnTop не скрывается


1-79803
Алексей
2004-02-11 13:59
2004.02.25
Автоматизация Word


1-79743
Romba
2004-02-12 10:33
2004.02.25
XPmenu глючит если быстро водить мышкой





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский