Blockly > Workspace

ชั้นเรียน Workspace

ชั้นเรียนสำหรับพื้นที่ทำงาน นี่คือโครงสร้างข้อมูลที่มีบล็อก ไม่มี UI และสร้างได้โดยไม่ต้องมีส่วนหัว

ลายเซ็น:

export declare class Workspace 

ผู้ผลิต

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

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

พร็อพเพอร์ตี้ คีย์ตัวปรับแต่ง ประเภท คำอธิบาย
connectionChecker IConnectionChecker
connectionDBList ConnectionDB[] ชุดฐานข้อมูลสำหรับการค้นหาตำแหน่งการเชื่อมต่ออย่างรวดเร็ว
horizontalLayout บูลีน
id สตริง
isFlyout readonly บูลีน พื้นที่ทำงานนี้เป็นพื้นผิวสำหรับเมนูแบบเลื่อนลงใช่ไหม
isMutator readonly บูลีน พื้นที่ทำงานนี้เป็นพื้นผิวสำหรับ Mutator ใช่ไหม
MAX_UNDO ตัวเลข จำนวนเหตุการณ์เลิกทำสูงสุดในสแต็ก 0 จะปิดการเลิกทำ ส่วน Infinity จะตั้งค่าให้เลิกทำได้ไม่จำกัด
ตัวเลือก ตัวเลือก
redoStack_ protected บทคัดย่อ[]
rendered บูลีน แสดงผล true หากพื้นที่ทำงานมองเห็นได้ และ false หากเป็นแบบไม่มีส่วนหัว
RTL บูลีน
SCAN_ANGLE static ตัวเลข เอียงออกจากแนวนอนเพื่อกวาดหาบล็อก โดยทั่วไปแล้ว ลำดับการดำเนินการจะเริ่มจากบนลงล่าง แต่การเปลี่ยนมุมเล็กน้อยจะทำให้การสแกนมีแนวโน้มจากซ้ายไปขวาเล็กน้อย (กลับด้านใน RTL) หน่วยเป็นองศา ดูที่ https://tvtropes.org/pmwiki/pmwiki.php/Main/DiagonalBilling
toolboxPosition toolbox.Position
undoStack_ protected บทคัดย่อ[]

เมธอด

วิธีการ คีย์ตัวปรับแต่ง คำอธิบาย
addChangeListener(func) เรียกใช้ฟังก์ชันเมื่อมีการเปลี่ยนแปลงในพื้นที่ทำงานนี้ โปรดทราบว่าอาจมีเหตุการณ์ล่าสุดบางรายการอยู่ในสแต็กแล้ว ดังนั้น ระบบอาจเรียกใช้ Listener การเปลี่ยนแปลงใหม่พร้อมกับเหตุการณ์ที่เกิดขึ้นไม่กี่มิลลิวินาทีก่อนที่จะเพิ่ม Listener การเปลี่ยนแปลง
addTopBlock(block) เพิ่มบล็อกไปยังรายการบล็อกยอดนิยม
addTypedBlock(block) เพิ่มบล็อกไปยังรายการบล็อกที่จัดเรียงตามประเภท
allInputsFilled(opt_shadowBlocksAreFilled) ตรวจสอบว่าอินพุตค่าและคำสั่งทั้งหมดในพื้นที่ทำงานเต็มไปด้วยบล็อกหรือไม่
clear() ทิ้งบล็อกและความคิดเห็นทั้งหมดในพื้นที่ทำงาน
clearUndo() ล้างสแต็กเลิกทำ/ทำซ้ำ
createVariable(name, opt_type, opt_id) สร้างตัวแปรที่มีชื่อ ประเภท (ไม่บังคับ) และรหัส (ไม่บังคับ) ที่ระบุ
deleteVariableById(id) ลบตัวแปรตามรหัสที่ส่งเข้ามาและการใช้งานทั้งหมดจากพื้นที่ทํางานนี้ อาจแจ้งให้ผู้ใช้ยืนยัน
dispose() ทิ้งพื้นที่ทำงานนี้ ยกเลิกการลิงก์จากองค์ประกอบ DOM ทั้งหมดเพื่อป้องกันหน่วยความจำรั่ว
fireChangeListener(event) เริ่มเหตุการณ์การเปลี่ยนแปลง
getAll() static ค้นหาพื้นที่ทำงานทั้งหมด
getAllBlocks(ordered) ค้นหาบล็อกทั้งหมดในพื้นที่ทำงาน คุณเลือกจัดเรียงบล็อกตามตำแหน่งได้ โดยเรียงจากบนลงล่าง (มีอคติเล็กน้อยจากซ้ายไปขวาหรือขวาไปซ้าย)
getAllVariableNames() แสดงชื่อตัวแปรทั้งหมดของทุกประเภท
getAllVariables() แสดงตัวแปรทั้งหมดของทุกประเภท
getBlockById(id) ค้นหาบล็อกในพื้นที่ทำงานนี้ที่มีรหัสที่ระบุ
getBlocksByType(type, ordered) ค้นหาบล็อกที่มีประเภทที่เชื่อมโยงและแสดงบล็อกเหล่านั้น คุณเลือกจัดเรียงบล็อกตามตำแหน่งได้ โดยเรียงจากบนลงล่าง (มีอคติเล็กน้อยจากซ้ายไปขวาหรือขวาไปซ้าย)
getById(id) static ค้นหาพื้นที่ทำงานที่มีรหัสที่ระบุ
getCommentById(id) ค้นหาความคิดเห็นในพื้นที่ทำงานนี้ด้วยรหัสที่ระบุ
getPotentialVariableMap() ส่งคืนแผนที่ตัวแปรที่มีตัวแปร "มีโอกาส" ซึ่งจะอยู่ในเมนูแบบเลื่อนลงแต่ไม่อยู่ในพื้นที่ทำงาน
getProcedureMap() แสดงแผนที่ของกระบวนการทั้งหมดในพื้นที่ทำงาน
getRootWorkspace()

แสดงพื้นที่ทำงานระดับบนสุดของพื้นที่ทำงานนี้ หากพื้นที่ทำงานมีพื้นที่ทำงานระดับบนสุด

เช่น พื้นที่ทำงานในเมนูแบบเลื่อนลงและบับเบิลพื้นที่ทำงานขนาดเล็กจะมีพื้นที่ทำงานระดับบน

getTopBlocks(ordered) ค้นหาบล็อกระดับบนสุดและแสดงผล คุณเลือกจัดเรียงบล็อกตามตำแหน่งได้ โดยเรียงจากบนลงล่าง (มีอคติเล็กน้อยจากซ้ายไปขวาหรือขวาไปซ้าย)
getVariable(name, opt_type) ค้นหาตัวแปรตามชื่อที่ระบุแล้วส่งคืน แสดงผล Null หากไม่พบ
getVariableById(id) ค้นหาตัวแปรตามรหัสที่ระบุและแสดงผล แสดงผล Null หากไม่พบ
getVariableMap() แสดงแผนที่ของตัวแปรทั้งหมดในพื้นที่ทำงาน
getVariableMapClass() protected
getVariablesOfType(type) ค้นหาตัวแปรที่มีประเภทที่ระบุ หากประเภทเป็น Null ให้แสดงรายการตัวแปรที่มีประเภทสตริงว่าง
getVariableUsesById(id) ค้นหาการใช้งานตัวแปรที่ระบุทั้งหมด ซึ่งระบุด้วยรหัส
getWidth() แสดงออฟเซ็ตแนวนอนของพื้นที่ทำงาน มีไว้สำหรับความเข้ากันได้ของ LTR/RTL ใน XML ไม่เกี่ยวข้องกับพื้นที่ทำงานแบบไม่มีส่วนหัว
hasBlockLimits() ตรวจสอบว่าพื้นที่ทำงานมีขีดจำกัดเกี่ยวกับจำนวนบล็อกสูงสุดหรือจำนวนบล็อกสูงสุดของประเภทที่เฉพาะเจาะจงหรือไม่
isCapacityAvailable(typeCountsMap) ตรวจสอบว่ามีความจุเหลือสำหรับสร้างบล็อกที่มีจำนวนตามที่ระบุหรือไม่ หากจำนวนบล็อกทั้งหมดที่แผนที่แสดงมากกว่าความจุที่เหลือทั้งหมด ฟังก์ชันจะแสดงผลเป็นเท็จ หากจำนวนประเภทมากกว่าความจุที่เหลือสำหรับประเภทนั้น ระบบจะแสดงผลเป็นเท็จ
isReadOnly() แสดงผลว่าพื้นที่ทำงานนี้อยู่ในโหมดอ่านอย่างเดียวหรือไม่
newBlock(prototypeName, opt_id) รับบล็อกที่สร้างขึ้นใหม่
newComment(id) รับความคิดเห็นที่สร้างขึ้นใหม่
remainingCapacity() จำนวนบล็อกที่เพิ่มลงในพื้นที่ทำงานได้ก่อนถึง maxBlocks
remainingCapacityOfType(type) จำนวนบล็อกของประเภทที่ระบุซึ่งอาจเพิ่มลงในพื้นที่ทำงานก่อนที่จะถึง maxInstances ที่อนุญาตสำหรับประเภทนั้น
removeChangeListener(func) หยุดฟังการเปลี่ยนแปลงของพื้นที่ทำงานนี้
removeTopBlock(block) นำบล็อกออกจากรายการบล็อกยอดนิยม
removeTypedBlock(block) นำบล็อกออกจากรายการบล็อกที่จัดเรียงตามประเภท
renameVariableById(id, newName) เปลี่ยนชื่อตัวแปรโดยอัปเดตชื่อในแผนที่ตัวแปร ระบุตัวแปรที่จะเปลี่ยนชื่อด้วยรหัสที่ระบุ
setIsReadOnly(readOnly) กำหนดว่าพื้นที่ทำงานนี้จะอยู่ในโหมดอ่านอย่างเดียวหรือไม่
sortByOrigin(a, b) protected จัดเรียงองค์ประกอบที่ล้อมรอบในพื้นที่ทำงานตามตำแหน่งสัมพัทธ์จากบนลงล่าง (มีค่า LTR หรือ RTL เล็กน้อย)
เลิกทำ(ทำซ้ำ) เลิกทำหรือทำซ้ำการดำเนินการก่อนหน้า