📄 النص الكامل للصفحة
--- SECTION: فتح الصفحة المناسبة من التحديد قائمة الخيارات ---
فتح الصفحة المناسبة من التحديد قائمة الخيارات
Opening the Appropriate Page for the ListPicker Selection
سيتم عرض الصفحة الخاصة بالمعلم بناء على الاختيار من ListPicker (قائمة الخيارات)، حيث تتعرف لبنة التعليمات البرمجية على المعلم المراد عرض صفحته سواء كانت باللغة الإنجليزية أو باللغة العربية، وترسل خيار اللغة إلى الشاشة أيضاً.
سيتم استخدام الشرط if لتحديد الصفحة التي يوجه إليها التطبيق.
--- SECTION: لفتح الصفحة المناسبة من التحديد ListPicker (قائمة الخيارات): ---
لفتح الصفحة المناسبة من التحديد ListPicker (قائمة الخيارات):
أضف شرط or الذي يحتوي على شرطي equals (يساوي)، وضعهما في عبارة If داخل حدث AfterPicking (بعد الاختيار). 1
أضف المتغير selection (اختيار) إلى الجانب الأيسر من شرطي equals (يساوي). 2
أضف empty string (سلسلة نصية فارغة) المتعلقة بمعلم Al Masmak (المصمك) باللغة الإنجليزية والعربية إلى الجانب الأيمن من شرطي equals (يساوي). 3
افتح شاشة Al Masmak (المصمك) مع تحديد StartValue (قيمة البداية) التي استخدمتها في الشاشة السابقة. 4
--- SECTION: شكل 3.39: تحديد الصفحة من ListPicker (قائمة الخيارات) ---
شكل 3.39: تحديد الصفحة من ListPicker (قائمة الخيارات)
وزارة التعليم
Ministry of Education
165
2025 - 1447
--- VISUAL CONTEXT ---
**DIAGRAM**: ListPicker AfterPicking Event Handler (Top-Right)
Description: A programming block diagram from MIT App Inventor showing an event handler. The 'when riyadh_list .AfterPicking' block triggers an action 'do set global selection to riyadh_list .Selection'. This block captures the selected item from the 'riyadh_list' ListPicker and stores it in a global variable named 'selection'.
Context: Illustrates the basic event handling for a ListPicker component, specifically how to retrieve the user's selection after an item has been picked.
**DIAGRAM**: MIT App Inventor Interface Screenshot
Description: A screenshot of the MIT App Inventor development environment. It shows the 'Visit_SA_App' project with 'Blocks' and 'Viewer' tabs. The left panel lists built-in components (Control, Logic, Math, Text, Lists, Dictionaries, Colors, Variables, Procedures) and specific project components (riyadh_label, jeddah_label, dammam_label, VerticalArrangement1, cities_label, riyadh_list, jeddah_list, dammam_list, Any component). The top bar shows 'Projects' and 'Connect' options. This interface provides the context for the programming blocks shown elsewhere on the page.
Context: Provides a visual reference to the MIT App Inventor development environment and the components available for building mobile applications, specifically highlighting the ListPicker and related UI elements.
**DIAGRAM**: ListPicker Item Styling and Selection Blocks (with '5')
Description: A set of programming blocks related to the 'riyadh_list' ListPicker component. It includes blocks for setting 'ItemBackgroundColor' and 'ItemTextColor', and a block for getting/setting 'riyadh_list .Selection'. A blue circle with the number '5' points to the 'riyadh_list .Selection' block, indicating its importance in the context of the instructions. Dashed lines connect the 'riyadh_list .Selection' block to the 'set global selection' blocks in other diagrams, suggesting its use as an input.
Context: Demonstrates how to programmatically control the visual appearance (background and text color) of ListPicker items and how to access the currently selected item.
**DIAGRAM**: Conditional Logic for ListPicker Selection (with '6')
Description: A programming block diagram showing a more complex 'when riyadh_list .AfterPicking' event handler. After setting 'global selection' to 'riyadh_list .Selection', it introduces nested 'if-then-else' conditional blocks. A blue circle with the number '6' highlights the 'if-then-else' structure, emphasizing the use of conditional logic. Dashed lines connect the 'riyadh_list .Selection' block to the 'set global selection' block, indicating data flow.
Context: Illustrates how to implement conditional branching (if-then-else logic) based on the value selected from a ListPicker, allowing the app to navigate to different pages or perform different actions depending on the user's choice.
🎴 بطاقات تعليمية للمراجعة
عدد البطاقات: 6 بطاقة لهذه الصفحة
ما هو الغرض من استخدام حدث AfterPicking (بعد الاختيار) مع مكون ListPicker (قائمة الخيارات) في MIT App Inventor؟
الإجابة: لتنفيذ إجراءات برمجية بعد أن يقوم المستخدم باختيار عنصر من قائمة الخيارات، مثل فتح صفحة معينة أو تحديد قيمة متغير.
الشرح: يتم تشغيل هذا الحدث تلقائياً بعد أن يقوم المستخدم باختيار عنصر من ListPicker، مما يوفر نقطة مناسبة لتنفيذ التعليمات البرمجية بناءً على ذلك الاختيار.
تلميح: فكر في اللحظة التي تحدث بعد تفاعل المستخدم مع القائمة المنسدلة.
التصنيف: تعريف | المستوى: سهل
ما هي الخطوات الأساسية لفتح صفحة مناسبة بناءً على اختيار من ListPicker في MIT App Inventor؟
الإجابة: 1. استخدام حدث AfterPicking للاستجابة لاختيار المستخدم. 2. تخزين الاختيار في متغير (مثل global selection). 3. استخدام عبارة شرطية (if) لمقارنة قيمة المتغير بخيارات محددة. 4. استخدام كتلة open screen لفتح الشاشة المناسبة مع تمرير القيمة المطلوبة.
الشرح: تتبع هذه الخطوات التسلسل المنطقي لمعالجة اختيار المستخدم من قائمة وتوجيهه إلى المحتوى الصحيح في التطبيق.
تلميح: تذكر أن العملية تبدأ بحدث وتنتهي بتنقل.
التصنيف: صيغة/خطوات | المستوى: متوسط
كيف يتم تخزين العنصر الذي اختاره المستخدم من ListPicker لاستخدامه لاحقاً في المنطق البرمجي؟
الإجابة: يتم تخزينه في متغير، عادةً متغير عام (global variable)، باستخدام كتلة 'set global [اسم المتغير] to [ListPickerName.Selection]' داخل معالج حدث AfterPicking.
الشرح: تسمح هذه الطريقة بحفظ الاختيار الحالي للمستخدم في مكان يمكن الوصول إليه من أجزاء مختلفة من البرنامج لتحديد الإجراء التالي.
تلميح: ابحث عن الكتلة التي تجمع بين 'set' و '.Selection'.
التصنيف: صيغة/خطوات | المستوى: سهل
ما هو دور العبارة الشرطية (if) في معالجة اختيار ListPicker كما هو موضح في الصفحة؟
الإجابة: دورها هو مقارنة قيمة العنصر المختار (المخزنة في متغير) بقيم محددة مسبقاً (مثل أسماء المعلمين باللغتين العربية والإنجليزية) لتحديد أي صفحة سيتم فتحها للمستخدم.
الشرح: تُمكّن العبارة الشرطية التطبيق من تنفيذ مسارات برمجية مختلفة (مثل فتح شاشات مختلفة) بناءً على اختيار المستخدم، مما يخلق تجربة تفاعلية وذكية.
تلميح: فكر في كيفية اتخاذ القرار بناءً على مقارنة.
التصنيف: مفهوم جوهري | المستوى: متوسط
لماذا قد نستخدم شرط 'or' مع شرطي 'equals' عند التعامل مع اختيار ListPicker لنفس المحتوى بلغات مختلفة؟
الإجابة: للتأكد من أن التطبيق سيتعرف على الاختيار بغض النظر عن اللغة التي تم عرض الخيار بها للمستخدم (مثل العربية أو الإنجليزية)، ويوجهه إلى نفس الصفحة المستهدفة.
الشرح: هذا يزيد من مرونة التطبيق ويحسن تجربة المستخدم، حيث يمكن للمستخدم اختيار الاسم باللغة التي يفضلها، وسيفهم التطبيق كلا الخيارين على أنهما يشيران إلى نفس الوجهة.
تلميح: فكر في كيفية جعل التطبيق يفهم مدخلات متعددة لنفس النتيجة.
التصنيف: تفكير ناقد | المستوى: صعب
ما هي الوظيفة الأساسية لخاصية '.Selection' الخاصة بمكون ListPicker في MIT App Inventor؟
الإجابة: هي خاصية تُرجع (أو يمكن تعيين) النص الخاص بالعنصر الذي قام المستخدم حاليًا باختياره من قائمة الخيارات.
الشرح: توفر هذه الخاصية الوصول البرمجي إلى اختيار المستخدم، وهو أمر ضروري لاتخاذ أي إجراء لاحق بناءً على ذلك الاختيار.
تلميح: ترتبط هذه الخاصية بنتيجة تفاعل المستخدم.
التصنيف: تعريف | المستوى: سهل