Компонент находится на вкладке Win32 и предназначен для хранения нескольких изображений. Этот компонент используется во многих случаях – для хранения коллекции изображений, вставляемых в главное и всплывающее меню программы, когда слева от команды выводится и картинка, для вывода изображений на кнопки панелей инструментов, и так далее.
Изучим этот компонент на практике. Создайте новое приложение. Установите на форму компонент MainMenu и ImageList. Далее, в главном меню создайте разделы "Файл" и "Помощь". В разделе "Файл" создайте подразделы "Открыть", "Сохранить", "-" и "Выход". А в разделе "Помощь" - подраздел "О программе".
Теперь дважды щелкните по компоненту ImageList. Откроется диалоговое окно загрузки изображений:
Воспользуемся теми самыми стандартными изображениями, которые мы использовали для кнопок. Нажмите кнопку "Add" (добавить изображение) и перейдите в каталог со стандартными картинками для кнопок:
Выберем картинку "Fileopen". Тут же выходит запрос, в котором говорится, что картинка состоит из 2-х изображений, и спрашивается, хотите ли вы разбить его на 2 картинки? Дело в том, что стандартные изображения для кнопок состоят из двух рисунков – когда кнопка находится в активном состоянии ( Enabled = True ), и в неактивном. В ImageList же можно ввести только одну картинку. Отвечайте "Yes". Двойное изображение будет разбито, и в окно попадут две картинки. Выделите серую картинку и нажмите кнопку "Delete", чтобы удалить ее из списка, она нам не нужна. В большинстве случаев для команды меню достаточно одного изображения. Если вы сделаете команду неактивной, Delphi самостоятельно меняет это изображение, рисунок выходит серым цветом.
Тоже самое сделайте с картинками "Filesave", "Dooropen" и "Help".
Как видите, индекс изображений начинается с нуля. Нажмите кнопку "ОК", чтобы принять список изображений.
Теперь выделите компонент MainMenu, и в свойстве Images выберите наш ImageList.
Дважды щелкните по MainMenu, чтобы открылось окно редактора меню. Выделите пункт "Открыть" (щелкайте по нему один раз, а не два, иначе создастся обработчик событий). Свойство команды меню ImageIndex отвечает за то, какое именно изображение будет соответствовать этой команде. По умолчанию оно равно -1, то есть, картинка не выбрана. Первая картинка имеет индекс 0, вторая – 1, и так далее. Выберите изображение из картинки FileOpen, оно должно быть первым. Вы можете выбрать любое изображение, не обязательно по порядку.
Для пункта "Сохранить" выбирайте второе изображение, для "Выход" - третье, а для "О программе" - последнее.
Закройте редактор меню, и откройте меню на форме. Вы должны увидеть, что слева от текста появились наши картинки. Вот таким простым образом можно украсить наше меню. Кстати, то же самое справедливо и для всплывающего PopupMenu. Попробуйте самостоятельно добавить в него такие же команды, как в разделе "Файл", и применить для них те же картинки (для этого не нужно создавать еще один ImageList, можно воспользоваться этим же).