Campos de imagem

Um campo de imagem armazena uma string como o valor dela e uma string como texto. O valor é o src da imagem, enquanto o texto é uma string alternativa que descreve/representa a imagem.

Campo "Imagem"

Campo de imagem em um bloco recolhido

com base em trends

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 aceita:

Parâmetro Descrição
src Uma string que aponta para um arquivo de imagem de varredura.
width É preciso converter para um número diferente de zero.
height É preciso converter 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 receber um clique.
opt_flipRtl (Opcional) Um booleano. Se for true, a imagem será invertida no eixo vertical no modo da direita para a esquerda. O valor padrão é false. Útil para ícones "virar à esquerda" e "virar à direita".

Serialização

Os campos de imagem não são serializáveis.

Gerenciador de cliques

O campo de imagem não aceita um validador. Em vez disso, ele aceita explicitamente uma função que é chamada sempre que o campo é clicado. Isso significa que as imagens podem atuar como botões que existem em blocos.

O gerenciador de clique pode ser definido no Construtor JavaScript ou com a função setOnClickHandler.

Veja um exemplo de gerenciador ao clicar que recolhe o bloco quando chamado.

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