Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > C++ Builder
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.02.2016, 03:36   #1
JustDaemon
 
Регистрация: 05.02.2016
Сообщений: 5
По умолчанию Как корректней записать?

Здравствуйте, проверяю правильность залитой картинки, то есть что бы в зависимости от того какая картинка залита в Image выполнялись разные действия. Столкнулся с проблемой, код работает, но выдаёт предупреждение "W8011 Nonportable pointer comparison"
Всё бы ничего, ведь это только предупреждение, но много примерно одинаковых строк, поэтому не позволяет запустить проект, пишет
"E2228 Too many error or warning messages"
Вот пример кода где предупреждение:

if ((Image2->Picture!="circle_black.jpg") && (Image2->Picture!="circle_green.jpg")

Как это != записать корректней? Спасибо!
JustDaemon вне форума Ответить с цитированием
Старый 05.02.2016, 05:42   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Цитата:
Вот пример кода где предупреждение:
Сравнивать объект и указатель на строку... новая мода не иначе.
p51x вне форума Ответить с цитированием
Старый 05.02.2016, 09:30   #3
JustDaemon
 
Регистрация: 05.02.2016
Сообщений: 5
По умолчанию

Блин, я и так знаю что написано не правильно, по другому не знаю как, поэтому здесь и спрашиваю.
JustDaemon вне форума Ответить с цитированием
Старый 05.02.2016, 09:49   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

TImage вроде не хранит имя файла нигде.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 05.02.2016, 09:51   #5
JustDaemon
 
Регистрация: 05.02.2016
Сообщений: 5
По умолчанию

Alex11223 а как тогда?
JustDaemon вне форума Ответить с цитированием
Старый 05.02.2016, 09:52   #6
JustDaemon
 
Регистрация: 05.02.2016
Сообщений: 5
По умолчанию

а как тогда?
JustDaemon вне форума Ответить с цитированием
Старый 05.02.2016, 10:00   #7
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

Делать обертку или грузить файл для сравнения в другой имадж и сравнивать внутренности.
p51x вне форума Ответить с цитированием
Старый 05.02.2016, 10:09   #8
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Или просто запоминать какая картинка стоит при ее установке.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 05.02.2016, 10:30   #9
min@y™
Цифровой кот
Старожил
 
Аватар для min@y™
 
Регистрация: 29.08.2014
Сообщений: 7,629
По умолчанию

Вообще, мне одному показался странным сам факт ветвления по именам файлов? Это же ацкий говнокодище!
Автор, колись давай, чо ты там наваять пытаесься?
Расскажу я вам, дружочки, как выращивать грибочки: нужно в поле утром рано сдвинуть два куска урана...
min@y™ вне форума Ответить с цитированием
Старый 06.02.2016, 13:07   #10
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Надо принять, что программирование это не мышкой контролы на форме ставить, а писать код.
И написать код, например, чтения конфигурационного файла, где прописать сопоставление имени картинки и некоего идентификатора, например, той же строки.
Читать файл в массив записей , на форме в пустой список (например, TListBox) после прочтения файла вписать строки с именами этих файлов (позволяя таким образом работать только с темми файлами которые есть в конфиге, чтобы не допустить случая когда загружена кем-то картинка, которую программа бы не смогла обработать), и по щелчку по списку грузить нужную картинку в нужный имедж и в отдельной структуре отмечать что в таком-то имейдже лежит картинка с таким-то идентификатором. Потом уже в коде в нужных местах проверять по той структуре, выставлена ли в таком-то имейдже картинка с таким-то идентификатором.
Идентификаторы нужны для возможности замены картинок без перекомпиляции программы и без явного переименования файлов (что важно при работе в течение времени), а вот версий конфигов можно как раз много иметь, даже с разными сопоставлениями одного и того же файла с разными идентификаторами.
Но если не охота заморачиваться такими улучшениями, то идентификаторы можно сделать теми же именами, но конфиг всё же лучше оставить, т.к. не всё ли равно держать ли все имена файлов в коде или во внешнем файле, а удобство файла меж тем явно перевешивает, можно даже зашифровать, хотя всё равно файлы картинок на виду будут.
phomm вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как записать? Alex_Pioner Помощь студентам 7 25.12.2012 15:56
понимаю как сделать, а как записать непойму(( lisica198808 Помощь студентам 9 24.11.2012 20:57
как сравнить 4 числа,наименьшее записать в R15.как вычислить степень? dezder Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 18.12.2011 13:02
Как записать ип cargo29 PHP 2 20.03.2011 23:30
Как записать? cargo29 Работа с сетью в Delphi 12 29.12.2010 19:57