حقول مربّعات الاختيار

يخزن حقل مربع الاختيار سلسلة كقيمتها والسلسلة كنص لها. وتكون قيمتها 'TRUE' أو 'FALSE'، ونصّها هو 'true' أو 'false'.

حقل مربّع الاختيار

حقل مربّع الاختيار على الجزء المصغَّر

إنشاء الفيديوهات

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');
  }
};

تستخدم الدالة الإنشائية لمربّعات الاختيار قيمة اختيارية وvalidator اختيارية. يجب أن تكون القيمة الاختيارية إما 'TRUE' أو 'FALSE' أو قيمة منطقية، وإلا سيتم ضبطها تلقائيًا على false.

التسلسل

JSON

يبدو ملف JSON لحقل مربّع الاختيار كما يلي:

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

حيث تكون FIELDNAME سلسلة تشير إلى حقل مربّع اختيار، وتكون القيمة هي القيمة المطلوب تطبيقها على الحقل. يجب أن تكون القيمة منطقية.

XML

يبدو ملف XML الخاص بحقل مربع الاختيار كما يلي:

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

أو

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

تتضمّن السمة name سلسلة تشير إلى حقل مربّع اختيار، والنص الداخلي هو القيمة المطلوب تطبيقها على الحقل. تتبع قيمة النص الداخلية نفس القواعد مثل قيمة الدالة الإنشائية.

لاحظ أنه بعد إلغاء التسلسل وإعادة التحويل التسلسلي لجميع قيم النص الداخلية، ستكون مكتوبة بأحرف كبيرة ('TRUE' أو 'FALSE'). وهذا الإجراء مهم أحيانًا عند اختلاف مساحات العمل.

التخصيص

حرف علامة الاختيار

يمكن استخدام السمة Blockly.FieldCheckbox.CHECK_CHAR لتغيير شكل علامة الاختيار. يجب أن تكون القيمة سلسلة تحتوي على حرف يونيكود.

حقل مربّع اختيار يتضمّن قلبًا بدلاً من مربّع اختيار

القيمة التلقائية للسمة CHECK_CHAR هي "\u2713" أو ✓.

هذا موقع عام، لذا سيتم تعديل جميع حقول مربّعات الاختيار عند ضبطها.

إنشاء مدقق مربع اختيار

تكون قيمة حقل مربّع الاختيار إما 'TRUE' أو 'FALSE'، لذا يجب أن تقبل أداة التحقّق هذه القيم (أي سلسلة) وتعرض 'TRUE' أو 'FALSE' أو null أو undefined.

إليك مثال على أداة التحقق من الصحة التي تخفي أو تعرض حقل إدخال النص استنادًا إلى ما إذا كان مربع الاختيار محددًا:

  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');
    }
  }

حقل مربّع اختيار فيه أداة التحقّق