Поле изображения хранит строку в качестве значения и строку в качестве текста. Его значением является источник изображения, а его текстом является альтернативная строка, описывающая/представляющая изображение.
Поле изображения
Поле изображения в свернутом блоке
Создание
JSON
{
"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": "*"
}
]
}
JavaScript
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);
}