|
<< Нажмите, чтобы показать Содержание >> TCustomRichView.SetPictureInfo |
Изменяет основные свойства элемента-рисунка или интерактивного рисунка.
function SetPictureInfo(ItemNo: Integer;
const AName: TRVUnicodeString; Agr: TRVGraphic;
AVAlign: TRVVAlign; const ATag: TRVTag): Boolean;
Параметры:
ItemNo – номер элемента. Элемент должен быть рисунком или интерактивным рисунком (rvsPicture или rvsHotPicture), в противном случае метод вызывает исключение ERichViewError. Элементы документа нумеруются от 0 до ItemCount-1, GetItemStyle возвращает тип элемента. Элементы поддокументов (ячеек таблиц) не включены в диапазон элементов основного документа; для элементов в ячейках используйте Cell.GetRVData.SetPictureInfo.
AName – имя элемента. Произвольная строка без символов переноса строки (CR и LF). Оно также может быть изменено методом SetItemText.
Agr – графический объект. Если элемент не использует общее изображение (по умолчанию), Agr должен быть уникальным графическим объектом (вы не можете присвоить один и тот же объект двум и более элементам), либо значением, возвращённым GetPictureInfo для этого элемента. Изображение рассматривается как общее, если дополнительное целочисленное свойство rvepShared установлено в ненулевое значение. Если элемент не использует общее изображение, и Agr не равен значению, полученному GetPictureInfo для этого элемента, метод освобождает память под ранее используемое элементом изображение.
AVAlign – вертикальное выравнивание изображение относительно строки.
ATag – тег элемента. Можно получить методами GetPictureInfo или GetItemTag. Он также может быть изменён методом SetItemTag.
Возвращаемое значение:
True, если требуется переформатирование (что возможно при изменении вертикального выравнивания или присвоении изображения другого размера).
Тип метода:
быстрое изменение документа.
Дополнительные свойства элемента могут быть изменены методами SetItemExtraIntProperty и SetItemExtraStrProperty (включая изменение размера (растяжение), настройки прозрачности TBitmap, имя файла изображения, альтернативный текст для HTML).
Пример 1:
RichView1.SetPictureInfo(ItemNo, 'моя картинка', Bitmap2,
rvvaBaseline, 'тег картинки');
Пример 2 [VCL и LCL]: (ошибочный!)
bmp := TBitmap.Create;
bmp.LoadFromFile('c:\image.bmp');
RichView1.SetPictureInfo(ItemNo1, '', bmp, rvvaBaseline, '');
// ошибка! нельзя назначать один и тот же
// графический объект двум элементам
RichView1.SetPictureInfo(ItemNo2, '', bmp, rvvaBaseline, '');
Пример 3 (такой же, но без ошибки)
bmp1 := TBitmap.Create;
bmp1.LoadFromFile('c:\image.bmp');
RichView1.SetPictureInfo(ItemNo1, '', bmp1, rvvaBaseline, '');
bmp2 := TBitmap.Create;
bmp2.Assign(bmp1);
RichView1.SetPictureInfo(ItemNo2, '', bmp2, rvvaBaseline, '');
Пример 4 (такой же, но с общими изображениями)
bmp := TBitmap.Create;
bmp.LoadFromFile('c:\image.bmp');
RichView1.SetPictureInfo(ItemNo1, '', bmp, rvvaBaseline, '');
RichView1.SetItemExtraIntProperty(ItemNo1, rvepShared, 1);
RichView1.SetPictureInfo(ItemNo2, '', bmp, rvvaBaseline, '');
RichView1.SetItemExtraIntProperty(ItemNo2, rvepShared, 1);
// будет необходимо самостоятельно освободить память
// под bmp когда документ RichView1 будет очищен
См. также методы:
▪Format;
См. также свойства:
См. также методы RichViewEdit:
См. также:
▪Tags.