Um campo de imagem armazena uma string como seu valor e uma string como seu texto. Seu o valor é o src da imagem, enquanto o texto é uma string alternativa que descrevem/representam a imagem.
Campo "Image"
Campo de imagem no bloco recolhido
Criação
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,
"*"));
}
};
O construtor de imagem recebe:
Parâmetro | Descrição |
---|---|
src |
Uma string que aponta para um arquivo de imagem de raster. |
width |
É necessário fazer a conversão para um número diferente de zero. |
height |
É necessário fazer a conversão para um número diferente de zero. |
opt_alt |
(Opcional) Uma string que descreve/representa a imagem com precisão. Se for null ou undefined , uma string vazia será usada. |
opt_onClick |
(Opcional) Uma função a ser chamada quando o campo é clicado. |
opt_flipRtl |
(Opcional) Um booleano. Se for true , a imagem será invertida no eixo vertical quando estiver no modo da direita para a esquerda. O padrão é false . Útil para "virar à esquerda" e "vire à direita" ícones. |
Serialização
Os campos de imagem não são serializáveis.
Gerenciador de cliques
O campo de imagem não aceita um validador. mas aceita explicitamente que é chamada sempre que o campo é clicado. Isso significa que as imagens podem atuar como botões que existem em blocos.
O gerenciador ao clicar pode ser definido no Construtor do JavaScript ou com a função setOnClickHandler.
Aqui está um exemplo de um manipulador no clique que recolhe o bloco quando chamou.
function() {
this.getSourceBlock().setCollapsed(true);
}