Tombol dan label

Anda dapat menempatkan tombol atau label di mana saja Anda dapat menempatkan blok di toolbox.

Kotak alat flyout dengan blok perbandingan, label "A label" dalam huruf miring, label "Another label", blok `not`, tombol berlabel "A button", dan blok benar-salah.

JSON

{
  "kind": "flyoutToolbox",
  "contents": [
    {
      "kind": "block",
      "type":"logic_operation"
    },
    {
      "kind": "label",
      "text": "A label",
      "web-class": "myLabelStyle"
    },
    {
      "kind": "label",
      "text": "Another label"
    },
    {
      "kind": "block",
      "type": "logic_negate"
    },
    {
      "kind": "button",
      "text": "A button",
      "callbackKey": "myFirstButtonPressed"
    },
    {
      "kind": "block",
      "type": "logic_boolean"
    }
  ]
}

XML

<xml id="toolbox" style="display: none">
  <block type="logic_operation"></block>
  <label text="A label" web-class="myLabelStyle"></label>
  <label text="Another label"></label>
  <block type="logic_negate"></block>
  <button text="A button" callbackKey="myFirstButtonPressed"></button>
  <block type="logic_boolean"></block>
</xml>
<style>
.myLabelStyle>.blocklyFlyoutLabelText {
  font-style: italic;
  fill: green;
}
</style>

Anda dapat menentukan nama class CSS yang akan diterapkan ke tombol atau label. Pada contoh di atas, label pertama menggunakan gaya kustom, sedangkan label kedua menggunakan gaya default.

Tombol harus memiliki fungsi callback; label tidak boleh. Untuk menyetel panggilan balik untuk klik tombol tertentu, gunakan

yourWorkspace.registerButtonCallback(yourCallbackKey, yourFunction).

Fungsi Anda harus menerima tombol yang diklik sebagai argumen. Tombol "Buat variabel..." dalam kategori variabel adalah contoh yang baik dari tombol dengan callback.