Шаг 75.
VBA в MSExcel.
Элементы управления и пользовательская форма. Элемент Image (Рисунок)

    На этом шаге мы рассмотрим назначение и пример использования этого элемента управления.

    Элемент управления Image (Рисунок) создается с помощью кнопки Рисунок (Image) . Он используется для отображения графических файлов в формате bmp, cur, gif, ico, jpg и wmf. Перечислим некоторые из его свойств, используемых для управления выводом изображения.

Таблица 1. Основные свойства Image
Свойство Назначение
AutoSize Допустимые значения: True (рисунок автоматически изменяет размер для того, чтобы отобразить изображение целиком) и False (в противном случае)
Picture Задает отображаемый графический файл. Используется с функцией LoadPicture. Синтаксис:
  Picture = LoadPicture (ПолноеИмяФайла)
ПолноеИмяФайла — полное имя отображаемого графического файла
PictureSizeMode Устанавливает масштабирование рисунка. Допустимые значения:
  • fmPictureSizeModeClip (не помещающиеся в границах объекта части рисунка обрезаются);
  • fmPictureSizeModeStretch (рисунок масштабируется так, чтобы он занимал всю поверхность объекта);
  • fmPictureSizeModeZoom (рисунок масштабируется с сохранением относительных размеров так, чтобы он помещался целиком внутри объекта).
PictureAlignment Устанавливает расположение рисунка внутри объекта. Допустимые значения:
  • fmPictureAlignmentTopLeft (в верхнем левом углу);
  • fmPictureAlignmentTopRight (в верхнем правом углу);
  • fmPictureAlignmentCenter (в центре);
  • fmPictureAlignmentBottomLeft (в нижнем левом углу);
  • fmPictureAlignmentBottomRight (в нижнем Правом углу)
PictureTiling Допустимые значения: True (объект покрывается мозаикой из рисунка) и False (в противном случае)

    Приведем пример размещения рисунка в объекте (рисунок 1).


Рис.1. Четыре примера размещения рисунка

    Во всех четырех случаях рисунок выравнивается по верхнему левому краю объекта. В первом случае изображение пропорционально масштабируется так, чтобы целиком заполнить область объекта. Во втором случае масштабирование непропорциональное, в третьем рисунок размещается произвольно, в четвертом область объекта покрывается мозаикой из рисунков.

Private Sub UserForm_Initialize()
  With Image1
    .PictureAlignment = fmPictureAlignmentTopLeft
    .PictureSizeMode = fmPictureSizeModeZoom
    .Picture = LoadPicture("Face.bmp")
  End With

  With Image2
    .PictureAlignment = fmPictureAlignmentTopLeft
    .PictureSizeMode = fmPictureSizeModeStretch
    .Picture = LoadPicture("Face.bmp")
  End With

  With Image3
    .PictureAlignment = fmPictureAlignmentTopLeft
    .PictureSizeMode = fmPictureSizeModeClip
    .Picture = LoadPicture("Face.bmp")
  End With

  With Image4
    .PictureAlignment = fmPictureAlignmentTopLeft
    .PictureTiling = True
    .Picture = LoadPicture("Face.bmp")
  End With
End Sub
Текст этого примера можно взять здесь.

    На следующем шаге мы рассмотрим ссылки на ячейки и диапазоны.




Предыдущий шаг Содержание Следующий шаг