Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Определение имени загружаемой картинки 
:(
    Опции темы
prostik
Дата 18.6.2007, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Ребята помогите. В компе есть три картинки людей, как при нажатии на кнопку "загрузить" загружать в Image1 любую из этих картинок? А потом при нажатии на кнопку "определить",в Memo1 писалось название той картинки,которая была загружена. 
(Т.е. каждая картинка сохраненная в компе имеет свое имя(алена, игорь,паша). Выбрал я допустим картинку с именем "алена", и нажал на кнопку определить,чтобы оно писало в мемо результат имя "алена"?)

Это сообщение отредактировал(а) prostik - 18.6.2007, 22:38
PM MAIL   Вверх
hoRUS
Дата 18.6.2007, 23:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Загружаем картинку

Код

Image1->Picture->LoadFromFile("Path")


А уж потом определяем имя файла из пути "Path" типа AnsiString. Если картинки лежат в той же директории, что и исполняемый файл, то достаточно в качестве названия картинки привести её имя. Вот тебе и имя картинки.

Вот например навсеидку код, который загружает картинку BMP с заданным именем, находящуюся в директории исполняемого файла и помещающего заданное имя в Memo1:

Код

 AnsiString PictureName = "Test.bmp";                       //Имя файла
 Image1 -> Picture -> LoadFromFile(PictureName);  
 PictureName.Delete(PictureName.Pos(".bmp"), 4);   //Убираем расширение .bmp
 Memo1 -> Lines -> Add(PictureName);                          


Это сообщение отредактировал(а) hoRUS - 18.6.2007, 23:32
PM MAIL ICQ   Вверх
Klin
Дата 18.6.2007, 23:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



prostik, если названия у вас указанны типа: алена, игорь, паша,  то зачем определять названия? Далее, как написал 
hoRUS, путь к изображению можно получить через свойство Path. А о том, как получить названии из файла (вместо "алена.jpg" получить "алена") написано в FAQ.

Добавлено через 7 минут и 42 секунды
Стоп, какой Path? Что-то я не сообразил...

И еще на всякий случай напишу как это сделать smile

Код

 Image1->Picture->LoadFromFile(ListBox1->Items->Strings[ListBox1->ItemIndex]); // ListBox у вас, полагаю
 Memo1->Text = ChangeFileExt(ListBox1->Items->Strings[ListBox1->ItemIndex],"" ); // запись в мемо



--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
prostik
Дата 19.6.2007, 00:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



нет, у меня не листбокс. а просто имэдж, две кнопки и поле-мемо.
нажимая на первую должна загружаеться картинка из директории. при нажатии на вторую кнопку, в мемо пишется имя этой картинки.
но спасибо вам огромное
PM MAIL   Вверх
Klin
Дата 19.6.2007, 13:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



prostik, не много не понял, если имя статистическое, то зачем вообще функции писать? smile Просто выводим в Memo заданный текст... Но вряд ли так стоит вопрос smile


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
SerK
Дата 19.6.2007, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



prostic!
Возможен вариант решения вашей проблемы:
1. Создать три строковых переменных с именами файлов рисунков.
2. При загрузке в LoadFromFile("писать переменную, а не имя");
3. В обработчике нажатия на кнопку создать еще одну строковую
    переменную - она и будет сравнивать и вводить значение в Memo.
4. Расширение  *.bmp  можно убрать функцией переменная.SubString(..,..);
Это упрощенный вариант.


--------------------
Пусть будет миру хорошо!
PM MAIL   Вверх
Klin
Дата 19.6.2007, 22:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



SerK, прочитай сообщения поста 2 назад smile


--------------------
Я человек - попробуйте обвинить меня за это.
PM MAIL   Вверх
SerK
Дата 19.6.2007, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



Klin!
Вы правы, почти плагиат. Но, честное слово, не умышленно.
Дорвался до интернета, уже четыре часа сиджу, в  глазах
туман. Мое извинение - noRus.


--------------------
Пусть будет миру хорошо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

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

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

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


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

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


 




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


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

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