setCellPictureSettings(row, col, settings);
row. Number. Индекс строки ячейки;
col. Number. Индекс столбца ячейки;
settings. JSON-объект с настройками изображения. Объект содержит следующие поля:
| Название параметра | Тип | Краткое описание |
| @H | Integer | Индекс изображения, которое будет отображаться в ячейке при наведении курсора. |
| @N | Integer | Индекс изображения, которое будет отображаться в ячейке.
Список изображений задается в JSON-настройках источника данных таблицы с помощью объекта Images. |
| @T | String | Текст всплывающей подсказки для изображения. |
| @HA | Integer | Тип выравнивания по горизонтали:
|
| @VA | Integer | Тип выравнивания по вертикали:
|
Метод setCellPictureSettings устанавливает настройки для изображения в ячейке таблицы.
Для работы метода необходимо, чтобы в JSON-настройках источника данных таблицы был задан список изображений, закодированных в base64. Пример JSON-настроек источника данных таблицы приведен в файле tabSheetJSON.js.
Для получения подробной информации о JSON-объекте компонента TabSheet обратитесь к разделу «JSON объект компонента TabSheet».
Для выполнения примера предполагается наличие файла tabSheetJSON.js с настройками источника данных таблицы.
Содержимое
файла tabSheetJSON.js
Перед выполнением примера ознакомьтесь с рекомендациями к написанию кода.
Для добавления таблицы, в которой настроено изображение для ячейки с координатами (0,0), используйте HTML-код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<link href="../build/PP.css" type="text/css" rel="stylesheet" />
<script src="../build/PP.js" type="text/javascript"></script>
<script src="../build/PP.TabSheet.js" type="text/javascript"></script>
<script src="tabSheetJSON.js" type="text/javascript"></script>
<script type="text/javascript">
function tbsht() {
if (!data)
return false;
if (!PP.Ui.ExamplePrognozSyncDataSource) {
PP.Ui.ExamplePrognozSyncDataSource = function (clear) {
this.MeasuresLoaded = new PP.Delegate();
this.RangeLoaded = new PP.Delegate();
};
// Создаём источник данных таблицы
PP.initClass(PP.Ui.ExamplePrognozSyncDataSource, PP.Object, "PP.Ui.ExamplePrognozSyncDataSource", [PP.Ui.ITabSheetDataSource]);
var esdsProto = PP.Ui.ExamplePrognozSyncDataSource.prototype;
esdsProto.getIsAsync = function () {
return false;
};
esdsProto.loadMeasures = function () {
this.MeasuresLoaded.fire(this, {
Data: data
});
};
esdsProto.loadRanges = function (rangeArray) {
this.RangeLoaded.fire(this, {
Data: data,
Ranges: rangeArray
});
};
esdsProto = null;
}
// Создаём экземпляр класса PP.Ui.ExamplePrognozSyncDataSource
dataSource = new PP.Ui.ExamplePrognozSyncDataSource();
component = new PP.Ui.TabSheet( {
ParentNode: document.getElementById("root"),
DataSource: dataSource,
IsEditable: true,
Width: 400,
Height: 250
});
}
</script>
</head>
<body onload="tbsht()" id="root">
</body>
</html>
В результате выполнения примера на странице будет размещена таблица с изображением в ячейке с координатами (0,0):

При наведении курсора на изображение её внешний вид не изменяется и не вызывается всплывающая подсказка.
Установим изображение, которое будет отображаться при наведении курсора, настроим всплывающую подсказку и изменим выравнивание одним из способов:
добавим часть кода после определения переменной component в используемом HTML-коде:
component.RangesLoaded.add(()=> {
component.setCellPictureSettings(0, 0, {"@H": 1, "@N": 0, "@T": "Sort", "@HA": 1, "@VA":2});
});
выполним в консоли браузера:
component.setCellPictureSettings(0, 0, {"@H": 1, "@N": 0, "@T": "Sort", "@HA": 1, "@VA":2});
После выполнения метода setCellPictureSettings для изображения будет установлено выравнивание по горизонтали по правому краю и по вертикали по центру. При наведении курсора внешний вид изображения изменится (будет использовано изображение с индексом 1, описанное в JSON-настройках), и отобразится всплывающая подсказка:

См. также: