القوائم المخصّصة في Google Workspace

يمكن للنصوص البرمجية توسيع منتجات Google معيّنة عن طريق إضافة عناصر واجهة المستخدم التي تنفّذ وظيفة "برمجة تطبيقات Google" عند النقر عليها. يتمثّل المثال الأكثر شيوعًا في تشغيل نص برمجي من عنصر قائمة مخصّص في "مستندات Google" أو "جداول بيانات Google" أو "العروض التقديمية من Google" أو "نماذج Google"، ولكن يمكن أيضًا تشغيل وظائف النص البرمجي من خلال النقر على الصور والرسومات في "جداول بيانات Google".

القوائم المخصَّصة في "مستندات Google" أو "جداول بيانات Google" أو "العروض التقديمية من Google" أو "نماذج Google"

يمكن لبرمجة التطبيقات إضافة قوائم جديدة في "مستندات Google" أو "جداول بيانات Google" أو "العروض التقديمية من Google" أو "نماذج Google"، مع ربط كل عنصر في القائمة بدالة في نص برمجي. (في "نماذج Google"، لا تكون القوائم المخصّصة مرئية إلا للمحرِّر الذي يفتح النموذج لتعديله، وليس للمستخدم الذي يفتح النموذج للرد).

ولا يمكن للنص البرمجي إنشاء قائمة إلا إذا كان مرتبطًا بالمستند أو جدول البيانات أو النموذج. لعرض القائمة عندما يفتح المستخدم ملفًا، اكتب رمز القائمة داخل دالة onOpen().

يوضّح المثال التالي كيفية إضافة قائمة تتضمّن عنصرًا واحدًا، يليها فاصل مرئي، ثم قائمة فرعية تحتوي على عنصر آخر. (يُرجى ملاحظة أنّه في "جداول بيانات Google"، ما لم تكن تستخدم الإصدار الجديد، يجب استخدام البنية addMenu() بدلاً من ذلك، ولا يمكن استخدام القوائم الفرعية). عندما يختار المستخدم أيًا من عناصر القائمة، تفتح الدالة المقابلة مربع حوار تنبيه. للحصول على مزيد من المعلومات عن أنواع مربّعات الحوار التي يمكنك فتحها، يمكنك الاطّلاع على دليل استخدام مربّعات الحوار والأشرطة الجانبية.

function onOpen() {
  var ui = SpreadsheetApp.getUi();
  // Or DocumentApp, SlidesApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('First item', 'menuItem1')
      .addSeparator()
      .addSubMenu(ui.createMenu('Sub-menu')
          .addItem('Second item', 'menuItem2'))
      .addToUi();
}

function menuItem1() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
     .alert('You clicked the first menu item!');
}

function menuItem2() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
     .alert('You clicked the second menu item!');
}

يمكن أن يحتوي المستند أو جدول البيانات أو العرض التقديمي أو النموذج على قائمة واحدة فقط باسم معين. إذا أضاف النص البرمجي نفسه أو نص برمجي آخر قائمة بالاسم نفسه، ستحلّ القائمة الجديدة محلّ القائمة القديمة. لا يمكن إزالة القوائم عندما يكون الملف مفتوحًا، إلا أنّه يمكنك كتابة دالة onOpen() لتخطّي القائمة في المستقبل في حال ضبط خاصية معيّنة.

صور ورسومات قابلة للنقر في "جداول بيانات Google"

يمكنك أيضًا تعيين وظيفة "برمجة التطبيقات" لصورة أو رسم في "جداول بيانات Google"، طالما أنّ النص البرمجي مرتبط بجدول البيانات. يوضح المثال أدناه كيفية إعداد ذلك.

  1. في "جداول بيانات Google"، اختَر عنصر القائمة الإضافات > برمجة التطبيقات لإنشاء نص برمجي مرتبط بجدول البيانات.
  2. احذف أي رمز في أداة تعديل النصوص البرمجية والصقه في ما يلي.

      function showMessageBox() {
        Browser.msgBox('You clicked it!');
      }
    
  3. ارجع إلى جداول البيانات وأدرج صورة أو رسمًا عن طريق تحديد إدراج > صورة أو إدراج > رسم.

  4. بعد إدراج الصورة أو الرسم، انقر عليه. يظهر محدد قائمة منسدلة صغير في الزاوية اليمنى العليا. انقر عليه واختَر تعيين نص برمجي.

  5. في مربع الحوار الذي يظهر، اكتب اسم دالة "برمجة تطبيقات Google" التي تريد تشغيلها بدون أقواس، وهي في هذه الحالة showMessageBox. انقر على حسنًا.

  6. انقر على الصورة أو الرسم مرة أخرى. يتم الآن تنفيذ الدالة.