var dataRangeNotation = 'Customers!A2:M6';
var values = SpreadsheetApp.openById('ss').getRange(dataRangeNotation).getValues();
var presentationId = 'xxx'
var requests = []
// For each record, create a new merged presentation.
for (var i = 0; i < values.length; ++i) {
var pageId = Utilities.getUuid();
var bodyId = Utilities.getUuid();
var subtitleID = Utilities.getUuid();
requests.push(
{
"createSlide": {
"objectId": pageId,
"slideLayoutReference": {
'predefinedLayout': 'TITLE'
},
}
});
}
var slide =
Slides.Presentations.batchUpdate({'requests': requests}, presentationId);
Logger.log('Created Slide with ID: ' + slide.replies[0].createSlide.objectId);
var preso = SlidesApp.openById(presentationId);
for (var i = 0; i < values.length; ++i) {
var row = values[i];
var customerName = row[0]; // name in column 1
var customerCompany = row[1];// case description in column 2
var [title, subtitle] = preso.getSlides()[i].getPageElements();
title.asShape().getText().setText(customerName);
subtitle.asShape().getText().setText(customerCompany);
}
Этот цикл делает свое дело, но не подходит для больших обновлений из-за API-ограничений.
Один прием, который я нашел, когда проигрывание с цветами выделения в ListBox должно работать с системными кистями вместо того, чтобы бороться против них.
Когда ListBox фокусируется, и объект выбран, что образованием объекта является SystemColors. HighlightBrush. Когда ListBox теряет фокус, однако, образование выбранного пункта становится SystemColors. ControlBrush.
Зная это, можно переопределить системные кисти для того, что ListBox так, чтобы объекты в были нарисованы цветами, которые Вы хотите.
<ListBox>
<ListBox.Resources>
<!-- override the system brushes so that selected items are transparent
whether the ListBox has focus or not -->
<SolidColorBrush
x:Key="{x:Static SystemColors.HighlightBrushKey}"
Color="Transparent" />
<SolidColorBrush
x:Key="{x:Static SystemColors.ControlBrushKey}"
Color="Transparent" />
<SolidColorBrush
x:Key="{x:Static SystemColors.HighlightTextBrushKey}"
Color="Black" />
</ListBox.Resources>
<!-- ... your items here ... -->
</ListBox>