Поля изображения

Поле изображения хранит строку в качестве значения и строку в качестве текста. Его значением является источник изображения, а его текстом является альтернативная строка, описывающая/представляющая изображение.

Поле изображения

Поле изображения в свернутом блоке

Создание

{
 
"type": "example_image",
 
"message0": "image: %1",
 
"args0": [
   
{
     
"type": "field_image",
     
"src": "https://www.gstatic.com/codesite/ph/images/star_on.gif",
     
"width": 15,
     
"height": 15,
     
"alt": "*"
   
}
 
]
}
Blockly.Blocks['example_image'] = {
  init
: function() {
   
this.appendDummyInput()
     
.appendField("image:")
     
.appendField(new Blockly.FieldImage(
       
"https://www.gstatic.com/codesite/ph/images/star_on.gif",
       
15,
       
15,
       
"*"));
 
}
};

Конструктор изображения принимает:

Параметр Описание
src Строка, указывающая на файл растрового изображения .
width Необходимо привести к ненулевому числу.
height Необходимо привести к ненулевому числу.
opt_alt (Необязательно) Строка, которая точно описывает/представляет изображение. Если оно null или undefined будет использоваться пустая строка.
opt_onClick (Необязательно) Функция, вызываемая при щелчке по полю.
opt_flipRtl (Необязательно) Логическое значение. Если true , изображение переворачивается по вертикальной оси в режиме справа налево. По умолчанию установлено значение false . Полезно для значков «повернуть налево» и «повернуть направо».

Сериализация

Поля изображения не сериализуемы.

Обработчик кликов

Поле изображения не принимает валидатор; вместо этого он явно принимает функцию, которая вызывается при каждом щелчке по полю. Это означает, что изображения могут действовать как кнопки, существующие на блоках.

Обработчик щелчка можно установить в конструкторе JavaScript или с помощью функции setOnClickHandler .

Вот пример обработчика щелчка, который сворачивает блок при вызове.

function() {
   
this.getSourceBlock().setCollapsed(true);
}