0 / 0 / 1
Регистрация: 09.12.2015
Сообщений: 35
|
||||||
1 | ||||||
Как проверить, из какого файла загружено изображение?05.02.2016, 02:15. Показов 1824. Ответов 11
Метки нет (Все метки)
Здравствуйте, проверяю правильность залитой картинки, то есть что бы в зависимости от того какая картинка залита в Image выполнялись разные действия. Столкнулся с проблемой, код работает, но выдаёт предупреждение "W8011 Nonportable pointer comparison"
Всё бы ничего, ведь это только предупреждение, но много примерно одинаковых строк, поэтому не позволяет запустить проект, пишет "E2228 Too many error or warning messages" Вот пример кода где предупреждение:
0
|
05.02.2016, 02:15 | |
Ответы с готовыми решениями:
11
Как проверить - загружено ли изображение в Image Как программно узнать, что изображение загружено в пикчуребокс? Как выяснить, какое именно изображение загружено в picturebox из ресуров Как посчитать хэш SHA3-512 для какого-либо файла и потом проверить его? |
2 / 2 / 1
Регистрация: 19.07.2015
Сообщений: 37
|
|
05.02.2016, 08:46 | 2 |
Мне кажется или Вы скобочку забыли ??? !!!
0
|
0 / 0 / 1
Регистрация: 09.12.2015
Сообщений: 35
|
|
05.02.2016, 09:28 [ТС] | 3 |
bad_luck_ho_ho, нет, я скинул строчку как образец, там дальше продолжение ещё.
Проблема в несоответствии типов, я не знаю как по другому сравнить TPicture с String
0
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
05.02.2016, 10:30 | 4 |
Сколько б не было предупреждений, но пока нет именно ошибок, проект запустится.
Что же по поводу вашей записи: она не верна. Вы сравниваете свойство Picture и текстовую строку. У строки тип String, а у свойства - TPicture. Их нельзя так сравнивать. Как костыль, можно попробовать при загрузке картинки в Image, прописывать последнему в свойство Hint имя картинки и сравнивать уже его. При этом показ самого Hint желательно б выключить. Лучше создать класс-обертку или перехватчик для TImage и добавить в него дополнительное поле для названия картинки.
1
|
0 / 0 / 1
Регистрация: 09.12.2015
Сообщений: 35
|
|
05.02.2016, 17:08 [ТС] | 5 |
SatanaXIII, в программе ошибок нет, там именно предупреждения, лично у меня в билдере стоит что предел 100 предупреждений, пробовал больше поставить, он не хочет.
Ну я понимаю что нельзя, именно поэтому я и здесь)) Спасибо за советы)
0
|
11.02.2016, 01:40 | 6 |
Важно понять, что не просто нельзя. Просто нельзя - это заехать под кирпич - нельзя, но результат будет, как и возможное наказание. А в твоем случае запись не имеет никакого смысла. Ну вообще.
0
|
0 / 0 / 1
Регистрация: 09.12.2015
Сообщений: 35
|
|
11.02.2016, 11:07 [ТС] | 7 |
BRcr, а кроме как осуждение, от вас можно услышать предложение/предложения?
0
|
Супер-модератор
|
|
11.02.2016, 11:11 | 8 |
Предложения уже были выше: написать класс-перехватчик для стандартного TImage, в который внести еще и поле для названия картинки, и потом сравнивать эти поля. Либо воспользоваться уже готовым свойством Tag, и для одинаковых картинок выставлять одинаковый Tag, и потом, при необходимости проверить одинаковость картинок - сравнивать эти теги между собой.
И что это дало? Нужен готовый код - так и скажи. А то ходят вокруг да около...
0
|
Практикантроп
4840 / 2725 / 533
Регистрация: 23.09.2011
Сообщений: 5,795
|
|
11.02.2016, 11:17 | 9 |
JustDaemon, а что еще не ясно? При загрузке картинки из файла (да и не только картинки) ни путь к файлу, ни его имя автоматом нигде не запоминаются. Материал получен - и адью. Поэтому программист должен сам такое предусматривать (как советовал SatanaXIII).
0
|
0 / 0 / 1
Регистрация: 09.12.2015
Сообщений: 35
|
||||||
11.02.2016, 23:17 [ТС] | 10 | |||||
volvo, я думал про Tag, не представляю как с ним работать при таком количестве картинок и проверок...
0
|
Практикантроп
4840 / 2725 / 533
Регистрация: 23.09.2011
Сообщений: 5,795
|
|
11.02.2016, 23:34 | 11 |
Tag - это 32 бита (целое); если с картинкой связать один бит (1 2 4 8 16 32 ...), то "просеивать" можно просто по маске одним действием (AND). Если 32 вариантов недостаточно - можно там хранить адрес переменной с бОльшим количеством вариантов.
0
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,907
|
|
12.02.2016, 09:36 | 12 |
JustDaemon, если у вас все картинки известны на стадии компиляции программы (то есть пользователь не будет выбирать сам и загружать какие-либо картинки в процессе работы программы), то целесообразнее все их загрузить в ImageList, и сравнивать уже по индексам.
0
|
12.02.2016, 09:36 | |
12.02.2016, 09:36 | |
Помогаю со студенческими работами здесь
12
Проверка загружено ли изображение Определить загружено ли в Image изображение Определить, какое изображение загружено в PictureBox Считать файл из папки, откуда было загружено изображение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |