📝 ملخص الصفحة
تقدم هذه الصفحة شرحاً عملياً لاستخدام بيئة تطوير MIT App Inventor لبرمجة تطبيقات الهواتف الذكية باستخدام البرمجة المرئية القائمة على الكتل. تُظهر الصفحة واجهة التطوير الكاملة مع أقسامها المختلفة بما في ذلك رأس التطبيق، ورأس الشاشة، وقائمة الكتل البرمجية، ومنطقة العرض.
يتم التركيز على كيفية التعامل مع عناصر واجهة المستخدم مثل قائمة الاختيار (ListPicker) وتحديداً عنصر riyadh_list. تُعرض أمثلة عملية على كيفية ضبط خصائص هذا العنصر مثل لون الخلفية والعناصر المكونة له، بالإضافة إلى كيفية تمكين أو تعطيل العنصر.
تشرح الصفحة أيضاً كيفية استخدام المنطق الشرطي في البرمجة، حيث يتم التحقق من قيمة بداية التطبيق (start value) لتحديد اللغة (الإنجليزية 'en' أو العربية 'ar') ومن ثم تعيين عناصر قائمة الاختيار بناءً على هذه اللغة باستخدام المتغيرات العامة (global variables).
يتم توضيح عملية تهيئة المتغيرات العامة وكيفية استخدامها في البرمجة، مع إبراز أهمية هذه الميزة في تطوير التطبيقات متعددة اللغات. تُظهر الأمثلة كيفية ربط المنطق البرمجي بعناصر واجهة المستخدم لإنشاء تطبيقات تفاعلية.
تقدم الصفحة رؤية شاملة لعملية تطوير التطبيقات باستخدام MIT App Inventor، بدءاً من التعامل مع عناصر الواجهة وصولاً إلى تنفيذ المنطق البرمجي المعقد باستخدام الكتل المرئية، مما يجعلها مناسبة للمبتدئين في مجال برمجة التطبيقات.
📄 النص الكامل للصفحة
--- SECTION: Application Header ---
MIT APP INVENTOR Projects Connect Build Settings Help My Projects View Trash Guide
--- SECTION: Screen Header ---
Visit_SA_App Cities Add Screen... Remove Screen Publish to Gallery
--- SECTION: Blocks Palette (Top) ---
Blocks Built-in Control Logic Math Text Lists Dictionaries Colors Variables Procedures Cities discover_label VerticalArrangement1
--- SECTION: Viewer Code Blocks (Top) ---
Viewer set riyadh_list . BackgroundColor to riyadh_list . Elements set riyadh_list . Elements to set riyadh_list . ElementsFromString to riyadh_list . Enabled
--- SECTION: Conditional Logic Block 1 ---
if get start value = "en" then set riyadh_list . Elements to else if get start value = "ar" then set riyadh_list . Elements to
--- SECTION: Application Header ---
MIT APP INVENTOR Projects Connect Build Settings Help My Projects View Trash Guide
--- SECTION: Screen Header ---
Visit_SA_App Cities Add Screen... Remove Screen Publish to Gallery
--- SECTION: Blocks Palette (Bottom) ---
Blocks Built-in Control Logic Math Text Lists Dictionaries Colors Variables Procedures
--- SECTION: Viewer Code Blocks (Bottom) ---
Viewer initialize global name to get set to
--- SECTION: Conditional Logic Block 2 ---
if get start value = "en" then set riyadh_list . Elements to get global riyadh_highlights_en else if get start value = "ar" then set riyadh_list . Elements to get global riyadh_highlights_ar
--- SECTION: Footer ---
وزارة التعليم Ministry of Education 2023 - 1447
--- SECTION: Page Number ---
162
--- VISUAL CONTEXT ---
**DIAGRAM**: MIT App Inventor Interface - List Picker Elements
Description: A screenshot of the MIT App Inventor development environment. The top section shows the application header with navigation options (Projects, Connect, Build, Settings, Help, My Projects, View Trash, Guide) and the screen header (Visit_SA_App, Cities, Add Screen..., Remove Screen, Publish to Gallery). The left panel is labeled 'Blocks' and lists categories like Built-in, Control, Logic, Math, Text, Lists, Dictionaries, Colors, Variables, Procedures, Cities, discover_label, and VerticalArrangement1. The main 'Viewer' area displays several block-based code snippets. These include 'set riyadh_list . BackgroundColor to', 'riyadh_list . Elements', 'set riyadh_list . Elements to', 'set riyadh_list . ElementsFromString to', and 'riyadh_list . Enabled'. A blue dashed arrow with the number '6' points from the right side of the image to the 'set riyadh_list . Elements to' block, indicating a specific point of interest or instruction.
X-axis: N/A
Y-axis: N/A
Data: N/A
Key Values: Block 'set riyadh_list . Elements to' is highlighted by indicator 6.
Context: Illustrates how to manipulate properties and elements of a list picker component (riyadh_list) in MIT App Inventor using block-based programming. The number 6 likely refers to a step or explanation in the accompanying text (not visible here).
**DIAGRAM**: MIT App Inventor Interface - Global Variable Initialization and Conditional Logic
Description: A second screenshot of the MIT App Inventor development environment, similar to the first. It also shows the application header and screen header. The left 'Blocks' panel is visible, listing categories. The 'Viewer' area displays block-based code for initializing a global variable: 'initialize global name to'. Below this, there are 'get' and 'set' blocks. A blue dashed arrow with the number '7' points from the right side of the image to the 'get' block. Below this screenshot, a separate block of conditional logic is shown: 'if get start value = "en" then set riyadh_list . Elements to get global riyadh_highlights_en else if get start value = "ar" then set riyadh_list . Elements to get global riyadh_highlights_ar'.
X-axis: N/A
Y-axis: N/A
Data: N/A
Key Values: Block 'get' is highlighted by indicator 7., Conditional logic checks 'start value' for 'en' or 'ar' to set 'riyadh_list . Elements' from 'global riyadh_highlights_en' or 'global riyadh_highlights_ar' respectively.
Context: Demonstrates how to initialize global variables ('name') and use conditional logic to dynamically set the elements of a list picker ('riyadh_list') based on a 'start value', likely representing a language preference (English 'en' or Arabic 'ar'). The number 7 likely refers to a step or explanation in the accompanying text (not visible here).
🎴 بطاقات تعليمية للمراجعة
عدد البطاقات: 5 بطاقة لهذه الصفحة
ما هو الغرض من استخدام الكتلة البرمجية 'set riyadh_list . Elements to' في MIT App Inventor؟
الإجابة: لتعيين أو تحديث العناصر (المحتوى) التي ستظهر في قائمة الاختيار (List Picker) المسماة 'riyadh_list'.
الشرح: تسمح هذه الكتلة للمبرمج بتحديد البيانات النصية (مثل أسماء المدن أو المعالم) التي سيراها المستخدم عند النقر على قائمة الاختيار 'riyadh_list'.
تلميح: فكر في الخاصية التي تتحكم في البيانات المعروضة داخل مكون واجهة المستخدم.
التصنيف: تعريف | المستوى: سهل
ما هي الخطوات المنطقية (Conditional Logic) الموضحة في الصفحة لتغيير لغة محتوى التطبيق ديناميكياً؟
الإجابة: استخدام كتلة 'if-then-else if' للتحقق من قيمة متغير 'start value'. إذا كانت القيمة 'en'، يتم تعيين عناصر القائمة 'riyadh_list' من المتغير العام 'riyadh_highlights_en'. وإذا كانت القيمة 'ar'، يتم تعيينها من المتغير العام 'riyadh_highlights_ar'.
الشرح: يمثل هذا النمط البرمجي تطبيقاً عملياً للبرمجة الشرطية لإنشاء تطبيق متعدد اللغات، حيث يتغير محتوى القائمة بناءً على إعدادات لغة المستخدم.
تلميح: راجع هيكل اتخاذ القرار بناءً على شرط. ما هي القيمتان الممكنتان للمتغير 'start value'؟
التصنيف: صيغة/خطوات | المستوى: متوسط
ما الفرق بين كتلة 'set riyadh_list . Elements to' وكتلة 'initialize global name to' في MIT App Inventor؟
الإجابة: كتلة 'set riyadh_list . Elements to' تُستخدم لتعيين خاصية (property) لمكون واجهة مستخدم موجود (List Picker). بينما كتلة 'initialize global name to' تُستخدم لإنشاء وتعيين قيمة ابتدائية لمتغير عام (global variable) يمكن استخدامه في أي مكان في التطبيق.
الشرح: الكتلة الأولى تخص واجهة المستخدم والثانية تخص منطق البرنامج وتخزين البيانات. المتغيرات العامة مفيدة لحفظ البيانات التي يحتاجها أكثر من شاشة أو إجراء.
تلميح: قارن بين نوعي الكائنات التي تتعامل معهما الكتلتان: مكونات واجهة المستخدم مقابل أماكن تخزين البيانات.
التصنيف: فرق بين مفهومين | المستوى: متوسط
ما هو المفهوم الجوهري الذي تمثله الكتلة البرمجية 'get global riyadh_highlights_en'؟
الإجابة: تمثل عملية استرجاع (قراءة) القيمة المخزنة داخل متغير عام اسمه 'riyadh_highlights_en'. هذه القيمة هي على الأرجح قائمة نصية تحتوي على معالم مدينة الرياض باللغة الإنجليزية.
الشرح: يسمح استخدام المتغيرات العامة بفصل البيانات عن منطق العرض، مما يجعل الكود أكثر تنظيماً وأسهل في الصيانة والتعديل، خاصة عند إضافة لغات جديدة.
تلميح: ما هي وظيفة الأمر 'get' عند استخدامه مع المتغيرات؟
التصنيف: مفهوم جوهري | المستوى: متوسط
كيف يمكن للمبرمج تغيير محتوى قائمة الاختيار (List Picker) بناءً على اختيار المستخدم أو شرط معين؟
الإجابة: عن طريق استخدام الكتلة البرمجية 'set [اسم_القائمة] . Elements to' داخل بنية تحكم شرطية (مثل if-then). يتم تعيين القيمة الجديدة للقائمة بناءً على نتيجة تقييم الشرط.
الشرح: هذه إحدى الممارسات الأساسية في هندسة البرمجيات لإنشاء تطبيقات تفاعلية وديناميكية تستجيب لإدخال المستخدم أو إعدادات النظام.
تلميح: ما هي البنية البرمجية التي تسمح بتنفيذ تعليمات مختلفة في ظروف مختلفة؟
التصنيف: تفكير ناقد | المستوى: صعب