الأحداث

يؤدي كل تغيير في مساحة العمل إلى تشغيل حدث. تصف هذه الأحداث بشكل كامل الحالة السابقة واللاحقة لكل تغيير.

الاستماع إلى الأحداث

تتضمن مساحات العمل طرقًا addChangeListener وremoveChangeListener يمكن استخدامها للاستماع إلى بث الحدث. ومن الأمثلة على ذلك إنشاء الرموز في الوقت الفعلي. ومن الأمثلة الأخرى العرض التوضيحي للحدّ الأقصى من الحظر. كما هو الحال غالبًا، لا يهتم أي من هذين المثالين بما كان الحدث الذي بدأه. بل ينظرون ببساطة إلى الحالة الحالية لمساحة العمل.

يمكن لأداة معالجة الأحداث الأكثر تعقيدًا النظر إلى حدث التشغيل. يرصد المثال التالي وقت إنشاء المستخدم لتعليقه الأول، ويصدر تنبيهًا، ثم يتوقف عن الاستماع حتى لا يتم تشغيل أي تنبيهات أخرى.

function onFirstComment(event) {
  if (event.type == Blockly.Events.BLOCK_CHANGE &&
      event.element == 'comment' &&
      !event.oldValue && event.newValue) {
    alert('Congratulations on creating your first comment!')
    workspace.removeChangeListener(onFirstComment);
  }
}
workspace.addChangeListener(onFirstComment);

للاستماع إلى أي أحداث تقع داخل القائمة المنبثقة، يمكن إضافة مستمع إلى مساحة عمل القائمة المنبثقة.

var flyoutWorkspace = yourWorkspace.getFlyout().getWorkspace();
flyoutWorkspace.addChangeListener(onFirstComment);

تعتمد القوالب على طريقة أخرى للاستماع إلى بث الحدث. يمكن للكتلة تحديد دالة onchange أو استخدام setOnChange لضبط دالة سيتم استدعاؤها كلما حدث تغيير في مساحة عمل الكتلة.

أنواع الأحداث

راجِع الوثائق المرجعية للحصول على معلومات عن أحداث فردية.

عرض توضيحي

للاطّلاع على مثال على الإجراءات الرائعة التي يمكنك تنفيذها في الفعاليات، يمكنك مشاهدة العرض التوضيحي لميزة النسخ المطابق. يحتوي هذا العرض التوضيحي على مساحتي عمل تتم مزامنتهما باستخدام الأحداث.