الفكرة الأساسية:
في البداية، بننشئ نافذة رئيسية للآلة الحاسبة باستخدام tk.Tk()، وبنحدد عنوان النافذة كـ "calculator". بعدها، بنضيف Label في أعلى النافذة يعرض النتيجة أو العمليات الحسابية المدخلة. الـ Label ده بيكون عرضه 20 خانة وخط كبير عشان نعرض عليه الأرقام والعمليات الحسابية بشكل واضح وسهل.
كيف بيشتغل الكود:
التفاعل مع الأزرار: كل زر في الآلة الحاسبة بيتحكم في إظهار الرقم أو العملية الحسابية على الـ Label. مثلا، لو المستخدم ضغط على "5"، الرقم ده هيتضاف للـ Label مع باقي الأرقام والعمليات. ده بيتم من خلال الدالة update_label(item).
الحسابات: لما المستخدم يضغط على زر "="، الكود بيحاول ينفذ العملية الحسابية باستخدام دالة eval. لو العملية صحيحة، النتيجة بتظهر في الـ Label، لكن لو فيه أي خطأ في المعادلة، زي ما لو كانت العملية مش صحيحة، بتظهر رسالة "خطأ".
التنظيف: زر "C" بيقوم بتنظيف الـ Label، يعني لو المستخدم عايز يبدأ من جديد، بيتم مسح كل البيانات اللي كانت موجودة.
الأزرار:
الأزرار في الآلة الحاسبة متوزعة في شكل شبكة باستخدام grid. بنحدد لكل زر وظيفة معينة:
الأرقام والعمليات الحسابية زي (جمع، طرح، ضرب، قسمة) بيتم إضافتها مباشرة للـ Label باستخدام update_label.
الزر "=" بيعمل حساب للعمليات باستخدام دالة calculate.
الزر "C" بيقوم بتنظيف الـ Label.
النهاية:
في النهاية، الكود ده بيقدم آلة حاسبة بسيطة وسهلة الاستخدام، وكل ما عليك هو الضغط على الأزرار لتكوين العملية الحسابية، ومن ثم إظهار النتيجة أو مسحها. لو فيه أي مشكلة في العملية، بتظهر رسالة "خطأ".