Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 1 696

/ вопрос открыт /

Здравствуйте!
Как мне добавить фотографию в бд и за одно прочесть его. Делаю проги типа для отдела кадров. Если можно по подробнее.
С уважением Мехродж.
mehroj-1@mail.ru

POWER Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: POWER (статус: Посетитель)
Вопрос отправлен: 16 июня 2008, 09:08
Состояние вопроса: открыт, ответов: 3.

Ответ #1. Отвечает эксперт: ANBsoft

Здравствуйте, POWER!
Ну почему никто не хочет использовать поиск, таких вопросов полно в инете.
Например:
http://www.delphikingdom.com/asp/answer.asp?IDAnswer=39461

Ответ отправил: ANBsoft (статус: Студент)
Время отправки: 16 июня 2008, 10:16
Оценка за ответ: 1

Комментарий к оценке: мне бы по подробнее

Ответ #2. Отвечает эксперт: Шичко Игорь

Здравствуйте, POWER!
Логично использовать BLOB-поля и компонент TStream.
В Яндексе наберите "BLOD-поля" или "TStream" и выдаст много практически готовых ссылок.

Ответ отправил: Шичко Игорь (статус: 9-ый класс)
Время отправки: 16 июня 2008, 11:44
Оценка за ответ: 2

Ответ #3. Отвечает эксперт: Вадим К

Здравствуйте, POWER!
Наиболее правильно будет хранить не сами картинки, а путь к ним на диске или еще лучше, только имя. Сами картинки храняться в отдельной папке и при отображении путь к картинке динамически формируется.
А теперь пара подсказок. Так как картинки скорее всего будут храниться в папке, которая находиться рядом с исполнимым файлом, а он может находиться где угодно, то нужно получить этот путь. Для этого в тестовом приложении напишите такой код для кнопки и "посозерцайте" его, перемещая файл с папки в папку

ShowMessage(ExtractFilePath(Application.exename));
Так как вы не написали, какую технологию доступа к данным вы используете, то точный код для подгрузки картинок не могу написать. В случае с BDE/ADO я использовал такую технологию. На форму ставил TDBEdit и настраивал эго на поле, где храниться картинка. также ставил TImage, который будет отображать её. Теперь, когда с помощью DBNavigator'a перемещаемся по записям, в DBEdit возникает событие OnChange, в котором и вставляем код подгрузки картинки. я писал обычно такое
fullpath := ExtractFilePath+'FolderForFoto\'+DBEdit1.text;
if not Fileexist(fullpath) then fullpath := ExtractFilePath+'FolderForFoto\NoFoto.jpg';
Image1.picture.loadfromFile(fullpath);
Думаю код прост и понятен. Надо только положить картинку для "отсутствующих фото".
Для обратного процесса (то есть добавления картинок в базу), делаем следующее
- копируем картинку в нашу папку, если только это не картинка с этой уже папки.
- по надобности переименовываем, что бы не было совпадающих имен.
- продолжаем работать с DBEdit, куда пишем имя файла., для чего пользуемся функцией ExtractFileName

Ответ отправил: Вадим К (статус: Академик)
Время отправки: 16 июня 2008, 18:20
Оценка за ответ: 5

Комментарий к оценке: Спасибо!

Мини-форум вопроса

Мини-форум пуст.

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 23 октября 2017, 00:01
Выполнено за 0.05 сек.
Рейтинг@Mail.ru