מופע של סביבת ממשק המשתמש של אפליקציית Google שמאפשרת לסקריפט להוסיף תכונות כגון תפריטים, תיבות דו-שיח וסרגלי צד. סקריפט יכול לקיים אינטראקציה רק עם ממשק המשתמש עבור את המופע הנוכחי של עורך פתוח, ורק אם הסקריפט מקושר לקונטיינר לעורך.
// Display a dialog box with a title, message, input field, and "Yes" and "No" buttons. The // user can also close the dialog by clicking the close button in its title bar. var ui = SpreadsheetApp.getUi(); var response = ui.prompt('Getting to know you', 'May I know your name?', ui.ButtonSet.YES_NO); // Process the user's response. if (response.getSelectedButton() == ui.Button.YES) { Logger.log('The user\'s name is %s.', response.getResponseText()); } else if (response.getSelectedButton() == ui.Button.NO) { Logger.log('The user didn\'t want to provide a name.'); } else { Logger.log('The user clicked the close button in the dialog\'s title bar.'); }
מאפיינים
נכס | סוג | תיאור |
---|---|---|
Button | Button | enum שמייצג לחצני תיבת דו-שיח מותאמים לשוק המקומי שנקבע מראש, שהוחזרו על ידי התראה או PromptResponse.getSelectedButton() כדי לציין
על איזה לחצן בתיבת הדו-שיח המשתמש לחץ. |
ButtonSet | ButtonSet | enum שמייצג קבוצות שנקבעו מראש ותורגמו לשוק המקומי של לחצנים בתיבת דו-שיח אחת או יותר נוסף להתראה או להנחיה. |
שיטות
שיטה | סוג הערך המוחזר | תיאור קצר |
---|---|---|
alert(prompt) | Button | תיפתח תיבת דו-שיח בעורך של המשתמש עם ההודעה הנתונה והלחצן 'אישור' לחצן. |
alert(prompt, buttons) | Button | פתיחת תיבת דו-שיח בעורך המשתמש עם ההודעה הנתונה וקבוצת הלחצנים. |
alert(title, prompt, buttons) | Button | פתיחת תיבת דו-שיח בעורך המשתמש עם הכותרת, ההודעה וקבוצת הלחצנים. |
createAddonMenu() | Menu | יוצר כלי שמאפשר להוסיף תפריט משנה לתפריט התוספים של העורך. |
createMenu(caption) | Menu | יוצר builder שיכול לשמש להוספת תפריט לממשק המשתמש של העורך. |
prompt(prompt) | PromptResponse | פותח תיבת דו-שיח להזנת קלט בעורך של המשתמש עם ההודעה הנתונה והלחצן "אישור" לחצן. |
prompt(prompt, buttons) | PromptResponse | פתיחת תיבת דו-שיח לקלט בעורך המשתמש עם ההודעה הנתונה וקבוצת הלחצנים. |
prompt(title, prompt, buttons) | PromptResponse | פותח תיבת דו-שיח להזנת קלט בעורך של המשתמש עם הכותרת, ההודעה וההגדרה שצוינו הלחצנים. |
showModalDialog(userInterface, title) | void | פתיחת תיבת דו-שיח של חלון בכלי העריכה של המשתמש עם תוכן מותאם אישית בצד הלקוח. |
showModelessDialog(userInterface, title) | void | פתיחת תיבת דו-שיח ללא מצב בעורך של המשתמש עם תוכן מותאם אישית בצד הלקוח. |
showSidebar(userInterface) | void | פתיחת סרגל צד בעורך של המשתמש עם תוכן מותאם אישית בצד הלקוח. |
מסמכי תיעוד מפורטים
alert(prompt)
תיפתח תיבת דו-שיח בעורך של המשתמש עם ההודעה הנתונה והלחצן 'אישור' לחצן. השיטה הזו
משעה את הסקריפט בצד השרת כשתיבת הדו-שיח פתוחה. הסקריפט ימשיך לאחר שהמשתמש
סוגר את תיבת הדו-שיח, אבל Jdbc
חיבורים ו-LockService
מנעולים
להמשיך לפעול לאורך כל ההשעיה. מידע נוסף זמין במדריך בנושא תיבות דו-שיח וסרגלי צד.
// Display "Hello, world" in a dialog box with an "OK" button. The user can also close the // dialog by clicking the close button in its title bar. SpreadsheetApp.getUi().alert('Hello, world');
פרמטרים
שם | סוג | תיאור |
---|---|---|
prompt | String | ההודעה שתוצג בתיבת הדו-שיח. |
חזרה
Button
– הלחצן שהמשתמש לחץ עליו.
alert(prompt, buttons)
פתיחת תיבת דו-שיח בעורך המשתמש עם ההודעה הנתונה וקבוצת הלחצנים. השיטה הזו
משעה את הסקריפט בצד השרת כשתיבת הדו-שיח פתוחה. הסקריפט ימשיך לאחר שהמשתמש
סוגר את תיבת הדו-שיח, אבל Jdbc
חיבורים ו-LockService
מנעולים
להמשיך לפעול לאורך כל ההשעיה. מידע נוסף זמין במדריך בנושא תיבות דו-שיח וסרגלי צד.
// Display a dialog box with a message and "Yes" and "No" buttons. The user can also close the // dialog by clicking the close button in its title bar. var ui = SpreadsheetApp.getUi(); var response = ui.alert('Are you sure you want to continue?', ui.ButtonSet.YES_NO); // Process the user's response. if (response == ui.Button.YES) { Logger.log('The user clicked "Yes."'); } else { Logger.log('The user clicked "No" or the close button in the dialog\'s title bar.'); }
פרמטרים
שם | סוג | תיאור |
---|---|---|
prompt | String | ההודעה שתוצג בתיבת הדו-שיח. |
buttons | ButtonSet | הלחצן מוגדר להצגה בתיבת הדו-שיח. |
חזרה
Button
– הלחצן שהמשתמש לחץ עליו.
alert(title, prompt, buttons)
פתיחת תיבת דו-שיח בעורך המשתמש עם הכותרת, ההודעה וקבוצת הלחצנים. הזה
השיטה משעה את הסקריפט בצד השרת כשתיבת הדו-שיח פתוחה. הסקריפט ימשיך לאחר
המשתמש סוגר את תיבת הדו-שיח, אבל Jdbc
חיבורים ו-LockService
מנעולים
להמשיך לפעול לאורך כל ההשעיה. מידע נוסף זמין במדריך בנושא תיבות דו-שיח וסרגלי צד.
// Display a dialog box with a title, message, and "Yes" and "No" buttons. The user can also // close the dialog by clicking the close button in its title bar. var ui = SpreadsheetApp.getUi(); var response = ui.alert('Confirm', 'Are you sure you want to continue?', ui.ButtonSet.YES_NO); // Process the user's response. if (response == ui.Button.YES) { Logger.log('The user clicked "Yes."'); } else { Logger.log('The user clicked "No" or the close button in the dialog\'s title bar.'); }
פרמטרים
שם | סוג | תיאור |
---|---|---|
title | String | הכותרת שתוצג מעל תיבת הדו-שיח. |
prompt | String | ההודעה שתוצג בתיבת הדו-שיח. |
buttons | ButtonSet | הלחצן מוגדר להצגה בתיבת הדו-שיח. |
חזרה
Button
– הלחצן שהמשתמש לחץ עליו.
createAddonMenu()
יוצר כלי שמאפשר להוסיף תפריט משנה לתפריט התוספים של העורך.
התפריט לא מתעדכן בפועל עד שמתבצעת קריאה של Menu.addToUi()
. אם הסקריפט פועל
בתור תוסף, השם של תפריט המשנה תואם לשם התוסף בחנות האינטרנט. אם הסקריפט מקושר ישירות למסמך, השם של תפריט המשנה
תואם לשם הסקריפט. מידע נוסף זמין במדריך לתפריטים.
// Add an item to the Add-on menu, under a sub-menu whose name is set automatically. function onOpen(e) { SpreadsheetApp.getUi() .createAddonMenu() .addItem('Show', 'showSidebar') .addToUi(); }
חזרה
Menu
– הכלי החדש ליצירת תפריטים.
createMenu(caption)
יוצר builder שיכול לשמש להוספת תפריט לממשק המשתמש של העורך. התפריט לא קשור
יתווספו בפועל עד שנקראים Menu.addToUi()
. מידע נוסף זמין במדריך לתפריטים. התווית של התפריט ברמה העליונה צריכה להיות
באותיות רישיות בכותרת (כל המילים הראשיות באותיות רישיות), למרות שהתווית של תפריט משנה צריכה להופיע
רישיות במשפט (רק המילה הראשונה באותיות רישיות). אם הסקריפט מתפרסם כתוסף, המערכת מתעלמת מהפרמטר caption
נוסף כתפריט משנה של תפריט התוספים, בדומה ל-createAddonMenu()
.
// Add a custom menu to the active document, including a separator and a sub-menu. function onOpen(e) { SpreadsheetApp.getUi() .createMenu('My Menu') .addItem('My menu item', 'myFunction') .addSeparator() .addSubMenu(SpreadsheetApp.getUi().createMenu('My sub-menu') .addItem('One sub-menu item', 'mySecondFunction') .addItem('Another sub-menu item', 'myThirdFunction')) .addToUi(); }
פרמטרים
שם | סוג | תיאור |
---|---|---|
caption | String | התווית של התפריט, שבה כל המילים הראשיות באותיות רישיות עבור התפריט ברמה העליונה, או רק את המילה הראשונה באותיות רישיות בתפריט משנה. |
חזרה
Menu
– הכלי החדש ליצירת תפריטים.
prompt(prompt)
פותח תיבת דו-שיח להזנת קלט בעורך של המשתמש עם ההודעה הנתונה והלחצן "אישור" לחצן. הזה
השיטה משעה את הסקריפט בצד השרת כשתיבת הדו-שיח פתוחה. הסקריפט ימשיך לאחר
המשתמש סוגר את תיבת הדו-שיח, אבל Jdbc
ו-LockService
מנעולים לא
להמשיך לפעול לאורך כל ההשעיה. מידע נוסף זמין במדריך בנושא תיבות דו-שיח וסרגלי צד.
// Display a dialog box with a message, input field, and an "OK" button. The user can also // close the dialog by clicking the close button in its title bar. var ui = SpreadsheetApp.getUi(); var response = ui.prompt('Enter your name:'); // Process the user's response. if (response.getSelectedButton() == ui.Button.OK) { Logger.log('The user\'s name is %s.', response.getResponseText()); } else { Logger.log('The user clicked the close button in the dialog\'s title bar.'); }
פרמטרים
שם | סוג | תיאור |
---|---|---|
prompt | String | ההודעה שתוצג בתיבת הדו-שיח. |
חזרה
PromptResponse
– ייצוג של תגובת המשתמש.
prompt(prompt, buttons)
פתיחת תיבת דו-שיח לקלט בעורך המשתמש עם ההודעה הנתונה וקבוצת הלחצנים. הזה
השיטה משעה את הסקריפט בצד השרת כשתיבת הדו-שיח פתוחה. הסקריפט ימשיך לאחר
המשתמש סוגר את תיבת הדו-שיח, אבל Jdbc
ו-LockService
מנעולים לא
להמשיך לפעול לאורך כל ההשעיה. מידע נוסף זמין במדריך בנושא תיבות דו-שיח וסרגלי צד.
// Display a dialog box with a message, input field, and "Yes" and "No" buttons. The user can // also close the dialog by clicking the close button in its title bar. var ui = SpreadsheetApp.getUi(); var response = ui.prompt('May I know your name?', ui.ButtonSet.YES_NO); // Process the user's response. if (response.getSelectedButton() == ui.Button.YES) { Logger.log('The user\'s name is %s.', response.getResponseText()); } else if (response.getSelectedButton() == ui.Button.NO) { Logger.log('The user didn\'t want to provide a name.'); } else { Logger.log('The user clicked the close button in the dialog\'s title bar.'); }
פרמטרים
שם | סוג | תיאור |
---|---|---|
prompt | String | ההודעה שתוצג בתיבת הדו-שיח. |
buttons | ButtonSet | הלחצן מוגדר להצגה בתיבת הדו-שיח. |
חזרה
PromptResponse
– ייצוג של תגובת המשתמש.
prompt(title, prompt, buttons)
פותח תיבת דו-שיח להזנת קלט בעורך של המשתמש עם הכותרת, ההודעה וההגדרה שצוינו
הלחצנים. השיטה הזו משעה את הסקריפט בצד השרת כשתיבת הדו-שיח פתוחה. התסריט
מתחדשת אחרי שהמשתמש סוגר את תיבת הדו-שיח, אבל חיבורים של Jdbc
ונעילה של LockService
לא נשמרים לאורך
על השעיה. לקבלת מידע נוסף, אפשר לעיין במדריך
תיבות דו-שיח וסרגלי צד.
// Display a dialog box with a title, message, input field, and "Yes" and "No" buttons. The // user can also close the dialog by clicking the close button in its title bar. var ui = SpreadsheetApp.getUi(); var response = ui.prompt('Getting to know you', 'May I know your name?', ui.ButtonSet.YES_NO); // Process the user's response. if (response.getSelectedButton() == ui.Button.YES) { Logger.log('The user\'s name is %s.', response.getResponseText()); } else if (response.getSelectedButton() == ui.Button.NO) { Logger.log('The user didn\'t want to provide a name.'); } else { Logger.log('The user clicked the close button in the dialog\'s title bar.'); }
פרמטרים
שם | סוג | תיאור |
---|---|---|
title | String | הכותרת שתוצג מעל תיבת הדו-שיח. |
prompt | String | ההודעה שתוצג בתיבת הדו-שיח. |
buttons | ButtonSet | הלחצן מוגדר להצגה בתיבת הדו-שיח. |
חזרה
PromptResponse
– ייצוג של תגובת המשתמש.
showModalDialog(userInterface, title)
פתיחת תיבת דו-שיח של חלון בכלי העריכה של המשתמש עם תוכן מותאם אישית בצד הלקוח. השיטה הזאת
לא תשעה את הסקריפט בצד השרת בזמן שתיבת הדו-שיח פתוחה. כדי לתקשר עם
סקריפט בצד השרת, הרכיב בצד הלקוח חייב לבצע קריאות חוזרות אסינכרוניות באמצעות API של google.script
עבור HtmlService
. כדי לסגור את תיבת הדו-שיח
באופן פרוגרמטי, קוראים ל-
google.script.host.close()
בצד הלקוח של HtmlService
באינטרנט
אפליקציה. למידע נוסף, עיין במדריך לתיבות דו-שיח
סרגלי הצד.
תיבות דו-שיח מודאליות מונעות מהמשתמש לבצע אינטראקציה עם כל דבר שאינו תיבת הדו-שיח. על ידי ניגודיות, תיבות דו-שיח ללא מצב וסרגלי צד מאפשרים למשתמש ליצור אינטראקציה עם כלי העריכה. כמעט בכל המקרים, עדיף להשתמש בתיבת דו-שיח מודאלית או בסרגל צד מאשר בתיבת דו-שיח ללא מצב.
// Display a modal dialog box with custom HtmlService content. var htmlOutput = HtmlService .createHtmlOutput('<p>A change of speed, a change of style...</p>') .setWidth(250) .setHeight(300); SpreadsheetApp.getUi().showModalDialog(htmlOutput, 'My add-on');
פרמטרים
שם | סוג | תיאור |
---|---|---|
userInterface | Object | HtmlOutput
שמייצגים את הממשק להצגה. |
title | String | כותרת של תיבת הדו-שיח; מבטל כל כותרת שהוגדרה על ידי הפעלה של setTitle() במכשיר
את האובייקט userInterface . |
אישור
סקריפטים שמשתמשים בשיטה הזו מחייבים הרשאה עם אחד או יותר מהיקפי ההרשאות הבאים:
-
https://www.googleapis.com/auth/script.container.ui
showModelessDialog(userInterface, title)
פתיחת תיבת דו-שיח ללא מצב בעורך של המשתמש עם תוכן מותאם אישית בצד הלקוח. השיטה הזו
לא משעה את הסקריפט בצד השרת כשתיבת הדו-שיח פתוחה. כדי לתקשר עם
את הסקריפט בצד השרת, הרכיב בצד הלקוח חייב לבצע קריאות חוזרות (callback) אסינכרוניות באמצעות API של google.script
בשביל HtmlService
. כדי לסגור את תיבת הדו-שיח
באופן פרוגרמטי, קוראים ל-
google.script.host.close()
בצד הלקוח של HtmlService
באינטרנט
אפליקציה. למידע נוסף, עיין במדריך לתיבות דו-שיח
סרגלי צד.
תיבות דו-שיח ללא מצב מאפשרות למשתמש ליצור אינטראקציה עם העורך מאחורי תיבת הדו-שיח. לעומת זאת, בתיבות דו-שיח שמוצגות לא. כמעט בכל המקרים, תיבת דו-שיח או סרגל צד הם אפשרויות טובות יותר מאשר תיבת דו-שיח ללא מצב.
// Display a modeless dialog box with custom HtmlService content. var htmlOutput = HtmlService .createHtmlOutput('<p>A change of speed, a change of style...</p>') .setWidth(250) .setHeight(300); SpreadsheetApp.getUi().showModelessDialog(htmlOutput, 'My add-on');
פרמטרים
שם | סוג | תיאור |
---|---|---|
userInterface | Object | HtmlOutput
שמייצגים את הממשק להצגה. |
title | String | כותרת של תיבת הדו-שיח; מבטל כל כותרת שהוגדרה על ידי הפעלה של setTitle() במכשיר
את האובייקט userInterface . |
אישור
סקריפטים שמשתמשים בשיטה הזו מחייבים הרשאה עם אחד או יותר מהיקפי ההרשאות הבאים:
-
https://www.googleapis.com/auth/script.container.ui
showSidebar(userInterface)
פתיחת סרגל צד בעורך של המשתמש עם תוכן מותאם אישית בצד הלקוח. השיטה הזאת
לא תשעה את הסקריפט בצד השרת כאשר סרגל הצד פתוח. כדי לתקשר עם
סקריפט בצד השרת, הרכיב בצד הלקוח חייב לבצע קריאות חוזרות אסינכרוניות באמצעות API של google.script
עבור HtmlService
. כדי לסגור את סרגל הצד
באופן פרוגרמטי, קוראים ל-
google.script.host.close()
בצד הלקוח של HtmlService
באינטרנט
אפליקציה. למידע נוסף, עיין במדריך לתיבות דו-שיח
סרגלי צד.
סרגל הצד מוצג בצד שמאל של העורך עבור משתמשים שבסביבות שלהם נעשה שימוש בשפה משמאל לימין ובצד שמאל של העורך עבור שפות הנכתבות מימין לשמאל. הכול סרגלי הצד שמוצגים על ידי סקריפטים הם ברוחב של 300 פיקסלים.
// Display a sidebar with custom HtmlService content. var htmlOutput = HtmlService .createHtmlOutput('<p>A change of speed, a change of style...</p>') .setTitle('My add-on'); SpreadsheetApp.getUi().showSidebar(htmlOutput);
פרמטרים
שם | סוג | תיאור |
---|---|---|
userInterface | Object | HtmlOutput
שמייצגים את הממשק להצגה. |
אישור
סקריפטים שמשתמשים בשיטה הזו מחייבים הרשאה עם אחד או יותר מהיקפי ההרשאות הבאים:
-
https://www.googleapis.com/auth/script.container.ui