चेकबॉक्स फ़ील्ड, अपनी वैल्यू के तौर पर एक स्ट्रिंग और अपने टेक्स्ट के तौर पर एक स्ट्रिंग सेव करता है. इसकी वैल्यू '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');
}
};
चेकबॉक्स कंस्ट्रक्टर में, एक वैकल्पिक वैल्यू और एक वैकल्पिक वैलडेटर होता है. वैकल्पिक वैल्यू, 'TRUE'
, 'FALSE'
या बूलियन होनी चाहिए. ऐसा न होने पर, यह डिफ़ॉल्ट रूप से false
पर सेट हो जाएगी.
एपिसोड क्रम से लगाने की सेटिंग
JSON
चेकबॉक्स फ़ील्ड के लिए JSON ऐसा दिखता है:
{
"fields": {
"FIELDNAME": true
}
}
यहां FIELDNAME
, चेकबॉक्स फ़ील्ड को रेफ़र करने वाली स्ट्रिंग है. साथ ही, वैल्यू वह वैल्यू है जिसे फ़ील्ड पर लागू करना है. वैल्यू बूलियन होनी चाहिए.
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');
}
}