blockly > FieldVariable

מחלקה FieldVariable

מחלקה לשדה הנפתח של משתנה.

Signature:

export declare class FieldVariable extends FieldDropdown 

תוספים: FieldDropdown

יצרנים

יצרן גורמי שינוי תיאור
(constructor)(varName, validator, variableTypes, defaultType, config) יצירה של מופע חדש של המחלקה FieldVariable

מאפיינים

נכס גורמי שינוי סוג תיאור
defaultVariableName מחרוזת
menuGenerator_ protected MenuGenerator | לא מוגדר
SERIALIZABLE בוליאני ה-serializer שומר שדות שניתנים לסריאליזציה, אבל לא שדות שלא ניתן לסריאליזציה. שדות שניתנים לעריכה צריכים גם להיות ניתנים לסידור בסדרה.
size_ protected גודל
variableTypes string[] | null כל סוגי המשתנים שיהיו זמינים בתפריט הנפתח של השדה הזה.

שיטות

שיטה גורמי שינוי תיאור
configure_(config) protected מגדירים את השדה על סמך מפת האפשרויות הנתונה.
doClassValidation_(newValue) protected מוודאים שהמזהה שייך למשתנה תקין מסוג מותאם.
doValueUpdate_(newId) protected

מעדכנים את הערך של שדה המשתנה, וגם את המשתנה והטקסט שלו.

מזהה המשתנה אמור להיות תקין בשלב הזה, אבל אם מאמת שדה משתנה מחזיר מזהה שגוי, המערכת עלולה להתרסק.

dropdownCreate(this) static הפונקציה מחזירה רשימה ממוינת של שמות משתנים לתפריטים נפתחים של משתנים. מוסיפים אפשרות מיוחדת בסוף ליצירת שם משתנה חדש.
fromXml(fieldElement) איפוס השדה הזה על סמך קובץ ה-XML הנתון.
getText() מקבלים את הטקסט מהשדה הזה, שהוא שם המשתנה שנבחר.
getValidator() הפונקציה מקבלת את פונקציית האימות של השדה הזה, או ערך null אם היא לא מוגדרת. הפונקציה מחזירה null אם המשתנה לא מוגדר, כי לא צריך להריץ את מאמתי הערכים בקריאה הראשונית של setValue, כי בשלב הזה השדה לא ישויך לבלוק ולסביבת עבודה.
getValue() מוצאים את מזהה המשתנה.
initModel() מאתחלים את המודל בשדה הזה, אם הוא עדיין לא הותחל. אם הערך לא הוגדר למשתנה עד לעיבוד הגרפי הראשון, אנחנו יוצרים משתנה במקום לאפשר שהערך יהיה לא חוקי.
onItemSelected_(menu, menuItem) protected טיפול בבחירה של פריט בתפריט הנפתח של המשתנה. מקרה מיוחד: האפשרויות 'שינוי שם המשתנה…' ו 'מחיקת המשתנה…'. במקרה של שינוי שם, מבקשים מהמשתמש להזין שם חדש.
setSourceBlock(block) מוסיפים את השדה הזה לבלוק.
shouldAddBorderRect_()
toXml(fieldElement) סריאליזציה של השדה הזה ל-XML.