Metin giriş alanları

Metin giriş alanı, bir dizeyi değer olarak, bir dizeyi ise metin olarak depolar. Değeri her zaman geçerli bir dizedir, metni ise düzenleyicisine girilen herhangi bir dize olabilir.

Metin giriş alanı

Düzenleyici açık metin giriş alanı

Daraltılmış bloktaki metin giriş alanı

içerik üretimi

JSON

{
  "type": "example_textinput",
  "message0": "text input: %1",
  "args0": [
    {
      "type": "field_input",
      "name": "FIELDNAME",
      "text": "default text",
      "spellcheck": false
    }
  ]
}

JavaScript

Blockly.Blocks['example_textinput'] = {
  init: function() {
    this.appendDummyInput()
        .appendField("text input:")
        .appendField(new Blockly.FieldTextInput('default text'),
            'FIELDNAME');
  }
};

Metin girişi oluşturucu, isteğe bağlı bir değer ve isteğe bağlı bir validator alır. Değer bir dizeye dönüştürülmelidir. null veya undefined ise boş dize kullanılır.

JSON tanımı, yazım kontrolü seçeneğini ayarlamanıza da olanak tanır.

Serileştirme ve XML

JSON

Metin giriş alanı için JSON şöyle görünür:

{
  "fields": {
    "FIELDNAME": "text"
  }
}

Burada FIELDNAME, bir metin giriş alanına referans veren bir dizedir. Değer ise alana uygulanacak değerdir. Değer, oluşturucu değeriyle aynı kuralları izler.

XML

Bir metin giriş alanı için XML şöyle görünür:

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

Alanın name özelliği, bir metin giriş alanına referans veren bir dize içerirken iç metin alana uygulanacak değerdir. İç metin değeri, oluşturucu değeriyle aynı kuralları izler.

Özelleştirme

Yazım denetimi

setSpellcheck işlevi, alanın giriş metninde yazım denetimi yapıp yapmayacağını ayarlamak için kullanılabilir.

Yazım denetimi olan ve olmayan metin giriş alanları

Yazım denetimi varsayılan olarak açıktır.

Bu, tek alanlar için geçerlidir. Tüm alanları değiştirmek isterseniz Blockly.FieldTextInput.prototype.spellcheck_ özelliğini değiştirin.

Metin girişi doğrulayıcı oluşturma

Metin giriş alanının değeri bir dizedir. Bu nedenle, tüm doğrulayıcılar bir dizeyi kabul etmeli ve bir dize (null veya undefined) döndürmelidir.

Dizedeki tüm 'a' karakterlerini kaldıran bir doğrulayıcı örneği aşağıda verilmiştir:

function(newValue) {
  return newValue.replace(/a/g, '');
}