Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.09.11;
Скачать: [xml.tar.bz2];

Вниз

Узнать имя картинки загруженной в Image   Найти похожие ветки 

 
Menel   (2003-09-01 16:27) [0]

Хорошего дня!

Вопрос: После того, как загружена картинка в TImage могу ли я узнать имя ее (картинки), допустим кликнув по Image получить имя, путь... графического файла.

Я так понимаю, что загруженная графика хранится в ресурсах, но может есть способ...


 
Skier   (2003-09-01 16:31) [1]


> могу ли я узнать имя ее (картинки), допустим кликнув по
> Image получить имя, путь...

Нет.


 
Menel   (2003-09-01 16:33) [2]

Что ж лаконично и жестоко:)


 
Palladin   (2003-09-01 16:36) [3]

Нет, не сможешь. Но можно хранить в TImage.Tag как PChar.


 
Skier   (2003-09-01 16:36) [4]

>Menel (01.09.03 16:33)
А зачем это понадобилось ?


 
Menel   (2003-09-01 16:47) [5]

Ой, сложно в двух словах рассказать: представляешь карты Таро ну и вот в принципе пишу гадание...

А упомянутое выше надо было для интерпритации карты (изначально она перевернутая, т.е. создается объект и открывается в разное время)...


 
Menel   (2003-09-01 16:51) [6]

В принципе, все я уже нашел выход - буду делать инспектор:) карт, где при раскладе (создании Image) рандомом будет заносится строка с именем карты, короче загорелся в голове светодиодик:))

А Tag у меня занят (там идентификатор языка приложения) - стараюсь сделать поддержку языков...


 
Skier   (2003-09-01 16:58) [7]

>Menel (01.09.03 16:47)

> А упомянутое выше надо было для интерпритации карты

Думаю что тебе вполне может понадобится (в будущем) не только имя файла, но и ещё какая-либо информация о карте, а по сему :

1) У всех потомков TComponent (а TImage является таковым) есть
св-во Tag специально предназначенное для хранения пользовательской
инф-ции об объекте. И это св-во ты можешь исплльзовать в
своих "коварных" целях, например так :

type
TCardInfo = packed record
ciImageName : String;
ciDown : Boolean; //"рубашкой" вверх
//и т.д.
end; //TCardInfo
PCardInfo = ^TCardInfo;

var
ACardInfo : PCardInfo;
begin
//.............
New(ACardInfo);
with ACardInfo^ do begin
//занесение ин-ции о карте
end; //with
YourImage.Tag := Integer(ACardInfo); //"привязываешь" ин-цию о карте к YourImage
//.............
//.................
with PCardInfo(YourImage.Tag)^ do begin
//работа с ин-цией о карте
end; //with
//.................
end;

Не забудь потом освобождать ин-цию о карте, т.е. Dispose(PCardInfo(YourImage.Tag));

2) Но лучший вариант это написать свой собственный класс, где
TImage, было бы полем класса.


 
Menel   (2003-09-01 17:02) [8]

Спасибо за информацию, обдумаю, говоря более я использую не совсем чистый Timage, а TRotateImage (на торри нашел) мне же вращать карты надо.


 
Skier   (2003-09-01 17:03) [9]

>Menel (01.09.03 17:02)

> я использую не совсем чистый Timage, а TRotateImage

В данном случае это не принципиально.


 
Menel   (2003-09-01 17:22) [10]

Спасибо, я это знаю:)



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

Форум: "Основная";
Текущий архив: 2003.09.11;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
1-33665
AndreySoft
2003-08-27 23:41
2003.09.11
Как перенести текст на следующую строку в RadioGroup


6-33713
der
2003-07-08 16:39
2003.09.11
Отображение в браузере результата выполнения запроса.


3-33440
Новенький
2003-08-21 09:47
2003.09.11
Автоматическое обновление грида.


14-33782
k-man
2003-08-18 19:22
2003.09.11
Железный трабл


14-33736
Shopot
2003-08-23 20:39
2003.09.11
Картинки и иконки





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский