blockly > บล็อก

บล็อกชั้นเรียน

ชั้นเรียนสำหรับ 1 บล็อก ตามปกติจะไม่เรียกใช้โดยตรง แนะนำให้ใช้ workspace.newBlock()

ลายเซ็น:

export declare class Block implements IASTNodeLocation 

การนำไปใช้งาน: IASTNodeLocation

ผู้ผลิต

ผู้ผลิต คีย์ตัวปรับแต่ง คำอธิบาย
(constructor)(workspace, prototypeName, opt_id) สร้างอินสแตนซ์ใหม่ของคลาส Block

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ คีย์ตัวปรับแต่ง ประเภท คำอธิบาย
childBlocks_ protected นี้[]
collapsed_ protected boolean
COLLAPSED_FIELD_NAME

static

readonly

สตริง รหัสกลางทางภาษาที่กำหนดให้กับฟิลด์ที่ยุบ
COLLAPSED_INPUT_NAME

static

readonly

สตริง รหัสกลางทางภาษาที่กำหนดให้กับอินพุตแบบยุบ
colour_ protected สตริง สีของบล็อกใน "#RRGGBB"
เขียนอะไร (หน้า 1: บล็อก) => เป็นโมฆะ (ไม่บังคับ) ฟังก์ชันที่ไม่บังคับที่จะกำหนดค่าบล็อกใหม่ตามเนื้อหาของกล่องโต้ตอบ Mutator
contextMenu boolean
ข้อมูล สตริง | ค่าว่าง ข้อมูลข้อความที่ไม่บังคับซึ่งรับส่งข้อมูลระหว่างบล็อกและ XML ไม่มีผล บุคคลที่สามอาจใช้สำหรับข้อมูลเมตา
แยกตัวออก (p1: พื้นที่ทำงาน) => บล็อก (ไม่บังคับ) ฟังก์ชันที่ไม่บังคับซึ่งสร้างกล่องโต้ตอบของ Mutator ด้วยคอมโพเนนต์ของบล็อกนี้
ทำลายอะไร () => เป็นโมฆะ (ไม่บังคับ) วิธีการที่ไม่บังคับซึ่งเรียกใช้ในระหว่างกำจัด
ทิ้ง protected boolean ระบบกำลังกำจัดบล็อกปัจจุบันอยู่หรือไม่
domToMutation? (p1: องค์ประกอบ) => เป็นโมฆะ (ไม่บังคับ) วิธีการดีซีเรียลไลซ์ที่ไม่บังคับสำหรับระบุวิธีดีซีเรียลไลซ์สถานะการเปลี่ยนแปลงจาก XML ต้องใช้ร่วมกับการกำหนด mutationToDom
getDeveloperVariables? () => สตริง[] (ไม่บังคับ) พร็อพเพอร์ตี้ที่ไม่บังคับสำหรับการประกาศตัวแปรนักพัฒนาซอฟต์แวร์ แสดงผลรายการชื่อตัวแปรสำหรับใช้โดยตัวสร้าง ตัวแปรนักพัฒนาซอฟต์แวร์จะไม่แสดงให้ผู้ใช้เห็นเลย แต่ได้รับการประกาศว่าเป็นตัวแปรร่วมในโค้ดที่สร้างขึ้น
หมวก สตริง (ไม่บังคับ) ชื่อประเภทหมวก
helpUrl สตริง | ฟังก์ชัน | ค่าว่าง สตริงสำหรับความช่วยเหลือด้านการบล็อก หรือฟังก์ชันที่ส่งคืน URL ว่างเปล่าหากไม่มีความช่วยเหลือ
ไอคอน IIcon[]
id สตริง
เริ่มต้นไหม () => เป็นโมฆะ (ไม่บังคับ) วิธีการที่ไม่บังคับซึ่งเรียกใช้ระหว่างการเริ่มต้น
inputList อินพุต[]
inputsInline? boolean (ไม่บังคับ)
inputsInlineDefault? boolean (ไม่บังคับ)
isInFlyout boolean
isInMutator boolean
isInsertionMarker_ protected boolean เป็นจริงหากบล็อกนี้เป็นเครื่องหมายแทรก
loadExtraState? (p1: ใดก็ได้) => เป็นโมฆะ (ไม่บังคับ) วิธีการทำให้เป็นอนุกรมที่ไม่บังคับสำหรับระบุวิธีดีซีเรียลสถานะส่วนเกินของบล็อก (เช่น สถานะการเปลี่ยนแปลง) จากสิ่งที่เข้ากันได้กับ JSON ต้องใช้ร่วมกับการกำหนด saveExtraState
mutationToDom? (...p1: ใดก็ได้[]) => ธาตุ (ไม่บังคับ) วิธีการทำให้ต่อเนื่อง (ไม่บังคับ) สำหรับกำหนดวิธีทำให้สถานะการเปลี่ยนแปลงเป็นอนุกรมเป็น XML ต้องใช้ร่วมกับการกำหนด domToMutation
nextConnection การเชื่อมต่อ | ค่าว่าง
onchange ((p1: บทคัดย่อ) => เป็นโมฆะ) | ค่าว่าง (ไม่บังคับ) เมธอด Callback ที่ไม่บังคับซึ่งใช้เมื่อพื้นที่ทำงานระดับบนของบล็อกมีการเปลี่ยนแปลง โดยปกติจะมีการเรียกจากตัวสร้าง ฟังก์ชันตัวเริ่มต้นประเภทบล็อก หรือฟังก์ชันตัวเริ่มต้นส่วนขยายเท่านั้น
outputConnection การเชื่อมต่อ | ค่าว่าง
outputShape_ protected ตัวเลข | ค่าว่าง
parentBlock_ protected นี้ | ค่าว่าง
previousConnection การเชื่อมต่อ | ค่าว่าง
แสดงผลแล้ว readonly boolean การบล็อกนี้เป็น BlockSVG ใช่ไหม
RTL boolean
saveExtraState? (doFullSerialization?: boolean) => ไม่จำกัด (ไม่บังคับ) วิธีการทำให้เป็นอนุกรมซึ่งไม่บังคับสำหรับระบุวิธีเรียงลำดับสถานะพิเศษของบล็อก (เช่น สถานะการเปลี่ยนแปลง) เป็นค่าที่เข้ากันได้กับ JSON ต้องใช้ร่วมกับการกำหนด loadExtraState
styleName_ protected สตริง ชื่อของรูปแบบบล็อก
suppressPrefixSuffix boolean | ค่าว่าง พร็อพเพอร์ตี้ที่ไม่บังคับสำหรับระงับการเพิ่ม STATEMENT_PREFIX และ STATEMENT_SUFFIX ในโค้ดที่สร้างขึ้น
เคล็ดลับเครื่องมือ Tooltip.TipInfo
ประเภท สตริง
พื้นที่ทำงาน พื้นที่ทำงาน

เมธอด

วิธีการ คีย์ตัวปรับแต่ง คำอธิบาย
addIcon(icon) เพิ่มไอคอนที่กำหนดไปยังบล็อก
allInputsFilled(opt_shadowBlocksAreFilled) ตรวจสอบซ้ำๆ ว่าอินพุตคำสั่งและค่าทั้งหมดได้รับการเติมบล็อกแล้วหรือยัง ตรวจสอบบล็อกคำสั่งต่อไปนี้ทั้งหมดในกลุ่มด้วย
appendDummyInput(name) เพิ่มแถวอินพุตจำลอง
appendEndRowInput(name) เพิ่มอินพุตที่สิ้นสุดแถว
appendInput(input)

ต่อท้ายแถวอินพุตที่กำหนด

อนุญาตให้เพิ่มอินพุตที่กำหนดเองต่อท้ายบล็อก

appendStatementInput(name) เพิ่มแถวอินพุตคำสั่งต่อท้าย
appendValueInput(name) เพิ่มแถวอินพุตค่าต่อท้าย
bumpNeighbours() ชนบล็อกที่ไม่ได้เชื่อมต่อให้พอดี องค์ประกอบ 2 บล็อกที่ไม่ได้เชื่อมต่อกันจริงๆ ไม่ควรวางเรียงกันอยู่บนหน้าจอ
dispose(healStack) กำจัดบล็อกนี้
disposeInternal() protected กำจัดบล็อกนี้โดยไม่ต้องดำเนินการตามที่บล็อกด้านบนกำหนด เช่น ไม่ทำให้เหตุการณ์เริ่มทำงาน ดึงการบล็อกออก เป็นต้น
doInit_() protected เรียกใช้ฟังก์ชัน init() และจัดการการเริ่มทำงานของเหตุการณ์ที่เกี่ยวข้อง ฯลฯ
getChildren(ordered) ค้นหาบล็อกทั้งหมดที่ฝังอยู่ภายในบล็อกนี้โดยตรง รวมอินพุตมูลค่าและข้อความ รวมถึงข้อความต่อไปนี้ ไม่รวมการเชื่อมต่อในแท็บเอาต์พุตหรือข้อความก่อนหน้า การบล็อกจะจัดเรียงตามตำแหน่ง (ไม่บังคับ) จากบนลงล่าง
getColour() เลือกสีของบล็อก
getCommentText() แสดงผลความคิดเห็นในบล็อกนี้ (หรือเป็นค่าว่างหากไม่มีความคิดเห็น)
getDescendants(ordered) ค้นหาบล็อกทั้งหมดที่ฝังอยู่ภายในบล็อกนี้โดยตรงหรือโดยอ้อม รวมบล็อกนี้ในรายการ ประกอบด้วยข้อมูลค่าและข้อความ ตลอดจนข้อความต่อไปนี้ ไม่รวมการเชื่อมต่อในแท็บเอาต์พุตหรือข้อความก่อนหน้า การบล็อกจะจัดเรียงตามตำแหน่ง (ไม่บังคับ) จากบนลงล่าง
getDisabledReasons() รับชุดสาเหตุว่าเหตุใดการบล็อกจึงถูกปิดใช้ในขณะนี้ (หากมี) หากเปิดใช้การบล็อก ชุดนี้จะว่างเปล่า
getField(name) แสดงผลฟิลด์ที่มีชื่อจากบล็อก
getFieldValue(name) แสดงผลค่ากลางทางภาษาของช่องที่ระบุ
getHue() รับค่าโทนสี HSV ของบล็อก มีค่าว่างหากไม่ได้ตั้งค่าโทนสี
getIcon(type)
getIcons()
getInheritedDisabled() ดูว่าระบบปิดใช้การบล็อกเนื่องจากผู้ปกครองหรือไม่ ระบบจะไม่พิจารณาพร็อพเพอร์ตี้ที่ปิดใช้ของการบล็อกนั้นเอง
getInput(name) ดึงข้อมูลออบเจ็กต์อินพุตที่มีชื่อ
getInputsInline() รับข้อมูลว่าอินพุตค่าจัดเรียงในแนวนอนหรือแนวตั้ง
getInputTargetBlock(name) ดึงข้อมูลบล็อกที่แนบอยู่กับอินพุตที่มีชื่อ
getInputWithBlock(block) แสดงผลอินพุตที่เชื่อมต่อกับบล็อกที่ระบุ
getNextBlock() แสดงผลบล็อกคำสั่งถัดไปที่เชื่อมต่อกับการบล็อกนี้โดยตรง
getOutputShape() รับรูปร่างเอาต์พุตของบล็อก
getParent() แสดงผลบล็อกระดับบนสุดหรือ Null หากการบล็อกนี้อยู่ที่ระดับบนสุด บล็อกหลักคือบล็อกที่เชื่อมต่อกับการเชื่อมต่อก่อนหน้า (สำหรับบล็อกคำสั่ง) หรือบล็อกที่เชื่อมต่อกับการเชื่อมต่อเอาต์พุต (สำหรับบล็อกค่า)
getPreviousBlock() แสดงบล็อกที่เชื่อมต่อกับการเชื่อมต่อก่อนหน้า
getRelativeToSurfaceXY() แสดงพิกัดที่มุมซ้ายบนของบล็อกนี้ซึ่งสัมพันธ์กับต้นทางของพื้นที่วาดภาพ (0,0) ในหน่วยพื้นที่ทำงาน
getRootBlock() แสดงบล็อกระดับบนสุดในแผนผังของบล็อกนี้ ระบบจะแสดงผลตัวเองหากการบล็อกนี้อยู่ที่ระดับบนสุด
getStyleName() ดูชื่อรูปแบบบล็อก
getSurroundParent() แสดงผลบล็อกหลักที่อยู่รอบการบล็อกปัจจุบัน หรือค่า Null หากการบล็อกนี้ไม่มีการบล็อกล้อมรอบ บล็อคหลักอาจเป็นเพียงคำสั่งก่อนหน้า ในขณะที่บล็อครอบคือคำสั่ง if, ขณะที่วนซ้ำ ฯลฯ
getTooltip() แสดงข้อความเคล็ดลับเครื่องมือสำหรับบล็อกนี้
getVars() แสดงผลตัวแปรทั้งหมดที่การบล็อกนี้อ้างอิง
hasDisabledReason(reason) ดูว่าปัจจุบันมีการปิดใช้การบล็อกด้วยเหตุผลที่ระบุหรือไม่
hasIcon(type)
initModel() เรียกใช้ initModel ในทุกช่องบนบล็อก อาจมีการโทรมากกว่า 1 ครั้ง ต้องเรียกใช้ initModel หรือ initSvg หลังจากสร้างการบล็อกและก่อนการโต้ตอบครั้งแรกกับบล็อก การโต้ตอบประกอบด้วยการดำเนินการของ UI (เช่น การคลิกและลาก) และเหตุการณ์การเริ่มทำงาน (เช่น สร้าง ลบ และเปลี่ยนแปลง)
isCollapsed() ดูว่าบล็อกยุบอยู่หรือไม่
isDeletable() ดูว่าบล็อกนี้ลบได้หรือไม่
isDisposed() แสดงผลหากมีการกำจัด / ลบการบล็อกนี้
isDuplicatable() รับข้อมูลว่าการบล็อกทำซ้ำได้หรือไม่ หากทำซ้ำการบล็อกนี้และองค์ประกอบสืบทอดจะทำให้การบล็อกนี้เกินขีดจำกัดของพื้นที่ทำงาน การบล็อกนี้จะทำซ้ำไม่ได้ หากทำซ้ำการบล็อกนี้และองค์ประกอบสืบทอดจะทําให้ประเภทใดก็ตามอยู่เหนือ maxInstances ของบล็อกนี้ทำซ้ำไม่ได้
isEnabled() ดูว่าการบล็อกนี้เปิดใช้หรือไม่ ระบบจะถือว่าการบล็อกเปิดใช้อยู่หากไม่มีเหตุผลใดๆ ที่ทำให้ปิดใช้ไม่ได้ การบล็อกอาจยังถูกปิดใช้ด้วยเหตุผลอื่นๆ แม้ว่าผู้ใช้จะพยายามเปิดใช้ด้วยตนเอง เช่น เมื่อการบล็อกอยู่ในตำแหน่งที่ไม่ถูกต้อง
isInsertionMarker() รับข้อมูลว่าบล็อกนี้เป็นบล็อกตัวทำเครื่องหมายการแทรกหรือไม่
isOwnDeletable() แสดงผลว่าพร็อพเพอร์ตี้ที่ลบได้ของบล็อกนี้เป็นจริงหรือเท็จ
isOwnEditable() แสดงผลว่าพร็อพเพอร์ตี้ที่แก้ไขได้ของบล็อกนี้เป็นจริงหรือเท็จ
isShadow() รับข้อมูลว่าบล็อกนี้เป็นบล็อกเงาหรือไม่
jsonInit(json) เริ่มต้นการบล็อกนี้โดยใช้คำอธิบาย JSON แบบข้ามแพลตฟอร์มและเหมาะกับการปรับให้เป็นสากล
mixin(mixinObj, opt_disableCheck) เพิ่มคีย์/ค่าจากMixinObj ลงในออบเจ็กต์บล็อกนี้ โดยค่าเริ่มต้น วิธีนี้จะช่วยตรวจสอบว่าคีย์ในmixinObj จะไม่เขียนทับค่าที่มีอยู่ในบล็อก รวมถึงค่าต้นแบบ ซึ่งเป็นการรับประกันบางส่วนจากความไม่เข้ากันระหว่าง Mixin / ส่วนขยายกับฟีเจอร์การบล็อกในอนาคต การตรวจสอบนี้สามารถปิดใช้ได้โดยการส่งผ่าน true เป็นอาร์กิวเมนต์ที่สอง
moveBy(dx, dy, reason) ย้ายบล็อกตามออฟเซ็ตที่เกี่ยวข้อง
moveInputBefore(name, refName) ย้ายอินพุตที่มีชื่อไปยังตำแหน่งอื่นในบล็อกนี้
moveNumberedInputBefore(inputIndex, refIndex) ย้ายอินพุตที่มีตัวเลขไปยังตำแหน่งอื่นในบล็อกนี้
removeIcon(type) นำไอคอนที่ getType ตรงกับ iconType ที่ระบุออกจากการบล็อก
removeInput(name, opt_quiet) นําอินพุตออกจากบล็อกนี้
renameVarById(oldId, newId) การแจ้งเตือนว่าตัวแปรจะเปลี่ยนชื่อ หากรหัสตรงกับตัวแปรของบล็อกนี้ ให้เปลี่ยนชื่อ
setCollapsed(collapsed) กำหนดว่าจะยุบบล็อกหรือไม่
setColour(colour) เปลี่ยนสีของบล็อก
setCommentText(text) ตั้งค่าข้อความความคิดเห็นของบล็อกนี้
setDeletable(deletable) ตั้งค่าว่าจะลบบล็อกนี้ออกได้หรือไม่
setDisabledReason(disabled, reason) เพิ่มหรือนำเหตุผลในการปิดใช้การบล็อกออก หากการบล็อกมีเหตุผลในการปิดใช้ จะถือว่าการบล็อกนั้นปิดใช้ไปแล้ว การบล็อกอาจถูกปิดใช้ด้วยเหตุผลหลายประการไปพร้อมกัน เช่น เมื่อผู้ใช้ปิดใช้งานด้วยตนเอง หรือการบล็อกไม่ถูกต้อง
setEditable(editable) ตั้งค่าว่าบล็อกนี้แก้ไขได้หรือไม่
setEnabled(enabled)
setFieldValue(newValue, name) ตั้งค่าของช่องที่ระบุสำหรับบล็อกนี้
setHelpUrl(url) ตั้งค่า URL ของหน้าความช่วยเหลือของบล็อกนี้
setInputsInline(newBoolean) กำหนดว่าอินพุตค่าจะจัดเรียงในแนวนอนหรือแนวตั้ง
setMovable(movable) กำหนดว่าต้องย้ายบล็อกนี้ได้หรือไม่
setMutator(_mutator) กำหนดกล่องโต้ตอบ Mutator ให้บล็อกนี้
setNextStatement(newBoolean, opt_check) กำหนดว่าจะให้อีกบล็อกหนึ่งต่อเข้ากับด้านล่างของบล็อกสี่เหลี่ยมนี้ได้หรือไม่
setOnChange(onchangeFn) ตั้งค่าฟังก์ชัน Callback ที่จะใช้เมื่อใดก็ตามที่พื้นที่ทำงานระดับบนของบล็อกมีการเปลี่ยนแปลง โดยแทนที่เครื่องจัดการ onchange ก่อนหน้า โดยปกติจะมีการเรียกจากตัวสร้าง ฟังก์ชันตัวเริ่มต้นประเภทบล็อก หรือฟังก์ชันตัวเริ่มต้นส่วนขยายเท่านั้น
setOutput(newBoolean, opt_check) กำหนดว่าการบล็อกนี้จะแสดงค่าหรือไม่
setOutputShape(outputShape) กำหนดรูปร่างเอาต์พุตของบล็อก
setPreviousStatement(newBoolean, opt_check) กำหนดว่าบล็อกนี้สามารถต่อเข้ากับด้านล่างของบล็อกอื่นได้หรือไม่
setStyle(blockStyleName) กำหนดค่ารูปแบบและสีของบล็อก
setTooltip(newTip) ตั้งค่าเคล็ดลับเครื่องมือสําหรับการบล็อกนี้
setWarningText(_text, _opt_id) ตั้งข้อความเตือนของบล็อกนี้
toDevString()

เมธอดนี้จะแสดงสตริงที่อธิบายการบล็อกนี้ในข้อกำหนดของนักพัฒนาซอฟต์แวร์ (พิมพ์ชื่อและรหัส เป็นภาษาอังกฤษเท่านั้น)

ใช้สำหรับบันทึกของคอนโซลและข้อผิดพลาด หากคุณต้องการสตริงที่ใช้ภาษาท้องถิ่นของผู้ใช้ (รวมถึงข้อความบล็อก ค่าฟิลด์ และบล็อกย่อย) ให้ใช้ [toString()]

toString(opt_maxLength, opt_emptyToken) สร้างการนำเสนอแบบข้อความที่มนุษย์อ่านได้ของบล็อกนี้และองค์ประกอบย่อยทั้งหมด
unplug(opt_healStack) ถอดปลั๊กบล็อกนี้ออกจากบล็อกขั้นสูง หากบล็อกนี้เป็นคำสั่ง ให้เลือกบล็อกด้านล่างอีกครั้งด้วยบล็อกที่ด้านบน