图片字段

图片字段会将字符串作为其值存储,并将字符串作为其文本存储。其值是图片的 src,而文本是用于描述/表示图片的 alt 字符串。

图片字段

带有标签“image:”和黄色星形图片的代码块。

收起的版块上的图片字段

收起后的同一代码块。该标签的标签为“variable: *”,其中“*”是图片的替代文本,右边缘呈锯齿状,表示该标签处于收起状态。

创建

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 (可选)准确描述/表示图片的字符串。当块收起时,系统会使用此文字,而不是图片。如果为 nullundefined,则使用空字符串。
opt_onClick (可选)在用户点击该字段时调用的函数。
opt_flipRtl (可选)布尔值。如果为 true,则在从右到左模式下,图片会沿垂直轴翻转。默认值为 false。适用于“向左转”和“向右转”图标。

序列化

图片字段不可序列化。

点击处理程序

图片字段不接受验证器;而是明确接受一个函数,该函数会在每次点击该字段时被调用。这意味着图片可以像块上存在的按钮一样。

点击处理脚本可以在 JavaScript 构造函数中设置,也可以使用 setOnClickHandler 函数设置。

以下是一个点击处理脚本示例,该脚本会在被调用时收起该块。

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

动画 GIF:显示点击图片、块收起、右键点击以显示上下文菜单、选择“展开块”以及块展开的过程。