Trường hình ảnh

Trường hình ảnh lưu trữ một chuỗi làm giá trị và một chuỗi làm văn bản. giá trị là src của hình ảnh, trong khi văn bản của hình ảnh là chuỗi thay thế mô tả/đại diện cho hình ảnh.

Trường hình ảnh

Trường hình ảnh trên khối đã thu gọn

dựa trên xu hướng

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,
        "*"));
  }
};

Hàm khởi tạo hình ảnh nhận:

Thông số Mô tả
src Một chuỗi trỏ đến tệp hình ảnh đường quét.
width Phải truyền tới một số khác 0.
height Phải truyền tới một số khác 0.
opt_alt (Không bắt buộc) Một chuỗi mô tả/thể hiện chính xác hình ảnh. Nếu giá trị là null hoặc undefined, thì chuỗi trống sẽ được sử dụng.
opt_onClick (Không bắt buộc) Một hàm để gọi khi người dùng nhấp vào trường này.
opt_flipRtl (Không bắt buộc) Giá trị boolean. Nếu là true, hình ảnh sẽ bị lật trên trục tung khi ở chế độ từ phải sang trái. Giá trị mặc định là false. Hữu ích khi "quay trái" và "quay phải" .

Chuyển đổi tuần tự

Các trường hình ảnh không chuyển đổi được tuần tự.

Trình xử lý lượt nhấp

Trường hình ảnh không chấp nhận trình xác thực; thay vào đó, mã này chấp nhận một cách rõ ràng được gọi bất cứ khi nào trường được nhấp vào. Điều này có nghĩa là hình ảnh có thể hoạt động giống như các nút tồn tại trên các khối.

Bạn có thể thiết lập trình xử lý lượt nhấp trong Hàm khởi tạo JavaScript hoặc sử dụng hàm setOnClickHandler.

Sau đây là ví dụ về một trình xử lý lượt nhấp có thể thu gọn khối khi có tên.

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