منوهای سفارشی برای افزودنیهای ویرایشگر، منوهای سفارشی برای افزودنیهای ویرایشگر
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
افزونههای منتشر شدهی ویرایشگر میتوانند آیتمهای منوی سفارشی را در منوی افزونههای ویرایشگر خود ایجاد کنند. میتوانید با استفاده از متد Ui.createAddonMenu() یک منوی افزونه وارد کنید و با استفاده از متد Menu.addItem() آیتمهایی را به آن اضافه کنید. منوها معمولاً در متد onOpen(e) افزونه ایجاد میشوند.
شما میتوانید منوهای پویایی ایجاد کنید که بر اساس تعاملات کاربر یا وضعیت افزونه تغییر میکنند. با این حال، افزونهها باید قبل از اینکه توسط کاربر تأیید شوند، یک منوی اولیه ایجاد کنند. به همین دلیل، قبل از ساخت منوها در onOpen(e) ، باید حالت تأیید افزونه را بررسی کنید. در حالی که افزونه در ScriptApp.AuthMode.NONE است، سعی نکنید هیچ اقدامی که نیاز به تأیید دارد (مانند بررسی Properties اسکریپت) انجام دهید. برای جزئیات بیشتر در مورد حالتها و چرخه تأیید ، به چرخه تأیید مراجعه کنید.
مثال زیر نحوه ساخت یک منوی افزونه پویا برای حالتهای مختلف مجوز را نشان میدهد:
functiononOpen(e){varmenu=SpreadsheetApp.getUi().createAddonMenu();//OrDocumentApporSlidesApporFormApp.if(e && e.authMode==ScriptApp.AuthMode.NONE){//Addanormalmenuitem(worksinallauthorizationmodes).menu.addItem('Start workflow','startWorkflow');}else{//Addamenuitembasedonproperties(doesn't work in AuthMode.NONE).varproperties=PropertiesService.getDocumentProperties();varworkflowStarted=properties.getProperty('workflowStarted');if(workflowStarted){menu.addItem('Check workflow status','checkWorkflow');}else{menu.addItem('Start workflow','startWorkflow');}//Recordanalytics.UrlFetchApp.fetch('http://www.example.com/analytics?event=open');}menu.addToUi();}
تاریخ آخرین بهروزرسانی 2026-02-18 بهوقت ساعت هماهنگ جهانی.
[[["درک آسان","easyToUnderstand","thumb-up"],["مشکلم را برطرف کرد","solvedMyProblem","thumb-up"],["غیره","otherUp","thumb-up"]],[["اطلاعاتی که نیاز دارم وجود ندارد","missingTheInformationINeed","thumb-down"],["بیشازحد پیچیده/ مراحل بسیار زیاد","tooComplicatedTooManySteps","thumb-down"],["قدیمی","outOfDate","thumb-down"],["مشکل ترجمه","translationIssue","thumb-down"],["مشکل کد / نمونهها","samplesCodeIssue","thumb-down"],["غیره","otherDown","thumb-down"]],["تاریخ آخرین بهروزرسانی 2026-02-18 بهوقت ساعت هماهنگ جهانی."],[],["Editor add-ons create custom menu items under the **Extensions** menu using `Ui.createAddonMenu()` and `Menu.addItem()`, typically within the `onOpen(e)` method. Menus must be defined *before* user authorization, necessitating a check of the add-on's authorization mode. Dynamic menus can change based on user interactions. Actions requiring authorization should not be performed when `AuthMode.NONE`. The provided example shows a dynamic menu construction for different modes, adding either \"Start workflow\" or \"Check workflow status\".\n"]]