Вопрос по version-control – Изменения растрового изображения Delphi TImageList

15

Я использую Delphi XE2 Update 3. Update 4 не совместима с некоторыми из наших сторонних компонентов, поэтому мы еще не обновили.

Я использую TImageList в своих приложениях. Я заметил, что много раз, когда он переключается из вида источника в вид формы (F12), внезапно ранее неизмененный модуль будет изменен. Если я сохраню изменения, вызванные нажатием клавиши F12, я смогу посмотреть на систему управления исходным кодом и увидеть, что несколько байтов свойства TImageList.Bitmap изменились. Вот один пример, который можно увидеть в TortoiseHg Workbench:

@@ -830,7 +830,7 @@
     Left = 760
     Top = 480
     Bitmap = {
-      494C01010200E402E40210001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
+      494C01010200E802E80210001000FFFFFFFFFF10FFFFFFFFFFFFFFFF424D3600
                   ^^  ^^  <-- two bytes changed

Иногда существуют другие незначительные изменения, но они всегда ограничены несколькими изолированными точками в данных TImageList.Bitmap. Это реальная боль - постоянно толкать эти незначительные изменения в контроль источников, когда я не делаю никаких преднамеренных изменений.

Кто-нибудь знает, почему Delphi изменяет данные TImageList.Bitmap при переключении между исходным представлением и представлением формы? Есть ли способ обойти это ограничение?

@DavidHefferman, это не происходит в Delphi 7. DaveBoltman
Я думаю, что это всегда так. Еще одна причина использовать ресурсы, а не растровые изображения в файлах .dfm. David Heffernan
Это поведение еще более заметно с изображениями в формах FireMonkey. Uwe Raabe

Ваш Ответ

1   ответ
5

Это действительно раздражающая ошибка IDE, о которой уже сообщалось иногда в Embarcadero Quality Central, особенно вКК 92769Но, к сожалению, это еще не исправлено. :-(

Это точная проблема. Спасибо за QC #. James L.
Same bug in new bug tracker  В комментариях есть обходной компонент Кароля Bieniaszewski
К сожалению, обходной путь не работает

Похожие вопросы