Onay kutusu alanları

Onay kutusu alanı, değeri olarak bir dize ve metni olarak da bir dize depolar. Değeri 'TRUE' veya 'FALSE', metni ise 'true' veya 'false''dır.

Onay kutusu alanı

!["Onay kutusu:" etiketi ve onay işareti içeren bir onay kutusu alanı içeren bir blok.

Daraltılmış bloktaki onay kutusu alanı

Aynı blok daraltıldıktan sonra. "değişken: doğru" etiketine ve daraltıldığını gösteren tırtıklı bir sağ kenara sahiptir.

içerik üretimi

JSON

{
  "type": "example_checkbox",
  "message0": "checkbox: %1",
  "args0": [
    {
      "type": "field_checkbox",
      "name": "FIELDNAME",
      "checked": true
    }
  ]
}

JavaScript

Blockly.Blocks['example_checkbox'] = {
  init: function() {
    this.appendDummyInput()
        .appendField('checkbox:')
        .appendField(new Blockly.FieldCheckbox(true), 'FIELDNAME');
  }
};

Onay kutusu oluşturucu, isteğe bağlı bir değer ve isteğe bağlı bir doğrulayıcı alır. İsteğe bağlı değer 'TRUE', 'FALSE' veya bir boole değeri olmalıdır. Aksi takdirde varsayılan olarak false olur.

Serileştirme

JSON

Onay kutusu alanının JSON'u şöyle görünür:

{
  "fields": {
    "FIELDNAME": true
  }
}

Burada FIELDNAME, onay kutusu alanına atıfta bulunan bir dizedir ve değer, alana uygulanacak değerdir. Değer bir boole olmalıdır.

XML

Onay kutusu alanının XML'i şu şekilde görünür:

<field name="FIELDNAME">TRUE</field>

veya

<field name="FIELDNAME">true</field>

name özelliği bir onay kutusu alanına referans veren bir dize içerir ve iç metin, alana uygulanacak değerdir. İç metin değeri, kurucu değeriyle aynı kurallara uyar.

Nesneler seri dışına çıkarılıp yeniden serileştirildikten sonra tüm iç metin değerlerinin büyük harfli ('TRUE' veya 'FALSE') olacağını unutmayın. Bu, bazen çalışma alanlarını karşılaştırırken önemlidir.

Özelleştirme

Onay işareti karakteri

Blockly.FieldCheckbox.CHECK_CHAR mülkü, onay işaretinin görünümünü değiştirmek için kullanılabilir. Değer, unicode karakteri içeren bir dize olmalıdır.

Onay işareti yerine kalp bulunan onay kutusu alanı

CHECK_CHAR özelliği varsayılan olarak "\u2713" veya ✓ değerine ayarlanır.

Bu bir genel özelliktir. Bu nedenle, ayarlandığında tüm onay kutusu alanlarını değiştirir.

Onay kutusu doğrulayıcısı oluşturma

Onay kutusu alanının değeri 'TRUE' veya 'FALSE' olduğundan doğrulayıcı bu değerleri (ör. dize) kabul etmeli ve 'TRUE', 'FALSE', null veya undefined döndürmelidir.

Aşağıda, onay kutusunun işaretli olup olmadığına bağlı olarak bir metin giriş alanını gizleyen veya gösteren bir doğrulama aracı örneği verilmiştir:

  validate: function(newValue) {
    var sourceBlock = this.getSourceBlock();
    sourceBlock.showTextField_ = newValue == 'TRUE';
    sourceBlock.updateTextField();

    return newValue;
  },

  updateTextField: function() {
    var input = this.getInput('DUMMY');
    if (this.showTextField_ && !this.getField('TEXT')) {
      input.appendField(new Blockly.FieldTextInput(), 'TEXT');
    } else if (!this.showTextField_ && this.getField('TEXT')) {
      input.removeField('TEXT');
    }
  }

Doğrulayıcı içeren onay kutusu alanı

Bir onay kutusunun işaretlendiğini gösteren animasyonlu GIF. Onay kutusu işaretlendiğinde bir metin alanı gösterilir.