В Delphi 7 включена программа редактора изображений, которая может читать и записывать файлы .dcr
, которые являются просто двоичными файлами ресурсов ( .res
] файлы) с другим расширением, которое по соглашению указывает, что файл .dcr содержит скомпилированный ресурс с именованными ресурсами растрового изображения, имена которых соответствуют именам ваших компонентов (ресурс растрового изображения с именем TMYCOMPONENT для компонента с именем TMyComponent). Эти растровые изображения - это то место, откуда берутся «значки», используемые для размещения значка на палитре компонентов delphi, а также на вашей форме или модуле данных, когда вы помещаете на него невизуальный компонент.
Перенесемся на 10 лет вперед до Delphi XE, и я пытаюсь создать значки компонентов, используя файл растрового изображения и файл RC, и создать эту сборку в файле .DCR как часть среды IDE Delphi.
Это должно быть просто вопросом добавления файла. Rc-файл и подобное объявление в файле .dpk (исходный код пакета), например:
{$R mypackageicons.rc mypackageicons.dcr}
Пример .rc-файла, содержащего значок компонента:
// COMPONENT ICON RESOURCES
TMYCOMPONENT BMP "TMYCOMPONENT.BMP"
Однако я не могу заставить это работать. Похоже, вы получаете несколько странных ошибок RLINK32, а IDE вылетает в borlandmm.dll, когда я пробую его:
[DCC Error] E2161 Error: RLINK32: Unsupported 16bit resource in file "C:\temp\compicon\COMPONENTICONS.rc"
[DCC Fatal Error] F2084 Internal Error: AV21515155-W06000D07-1
Рассматриваемый растровый файл представляет собой простой 256-цветной BMP-файл размером 24x24 пикселей, и я также пробовал 16 цветных растровых изображений , безуспешно. Мне кажется, что программа ImageEdit - единственный известный мне способ, который я могу использовать для создания значков компонентов Delphi.
Что я упускаю?
Обновление: Внешние инструменты - хорошее решение для людей, у которых нет доступа к редактору изображений Delphi 7, и на самом деле они могут быть лучше, но я бы предпочел сделать это, используя только то, что поставляется с Delphi. , потому что кажется, что это должно быть возможно с использованием только одного объявления {$ R}, текстового файла и файла BMP, созданного с помощью кисти. Конечно, они не упустили возможность создавать значки компонентов с помощью этого замечательного инструмента для разработки на 1,5 гигабайта! .. update2: И способ есть; Его нашел Руди В.