كومبو بوكس ​​تكينتر

Kwmbw Bwks Tkyntr

تقدم حزمة ttk ، وهي تعديل فريد من نوعه لـ Python Tkinter ، هذا المكون الإضافي. يعرض Python Tkinter ComboBox كل خيار من القائمة المنسدلة 1 في لحظة. له مظهر معاصر ، مما يجعله مناسبًا للمواقع التي يكون فيها التعرض أمرًا بالغ الأهمية. إدخال الأداة هو قدرة فئة لـ Python ComboBox. نتيجة لذلك ، فإنه يضيف بعض الخيارات والوظائف الإضافية بينما يرث أيضًا العديد من فئة الدخول.

الأداة الحاسمة التي يمكن رؤيتها في العديد من البرامج هي ComboBox. يتم إعطاء المستخدم قائمة بالبدائل للاختيار من بينها. لديها العديد من القيم ، ولا تعرض سوى واحدة في كل لحظة. سيغطي البرنامج التعليمي اليوم كيفية استخدام ComboBox في Linux باستخدام Tkinter.

مثال 1:

لنبدأ بأول مثال على وحدة Tkinter في Python. نقوم بإنشاء ملف Python جديد بامتداد “py” عبر وحدة التحكم الطرفية. بعد ذلك ، يمكنك استخدام أي محرر من اختيارك لفتح ملف Python الذي تم إنشاؤه حديثًا من مستكشف الملفات. نبدأ كود Python هذا باستيراد مكتبة Tkinter في الكود إلى جانب جميع كائناتها الفرعية وفئاتها وكياناتها المضمنة.



نقوم باستيراد كائن ttk الخاص به لاستخدامه في الكود. أولاً ، نسمي دالة Tk () لـ Tkinter لإضافة قيمة جديدة للكائن 't'. يتم استخدام الكائن 't' لاستدعاء وظيفة الهندسة لإنشاء واجهة مستخدم رسومية '200 × 150'. في هذا المثال الأول ، نستخدم طريقة 'frame ()' لـ Tkinter لإنشاء إطار واجهة المستخدم الرسومية على شاشة وحدة التحكم. الكائن 'f' للإطار مغلق هنا باستخدام وظيفة Tkinter pack ().



بعد ذلك ، نقوم بإنشاء قائمة 'l' لأنواع السلاسل التي تحتوي على إجمالي 5 قيم سلسلة فيها. بعد ذلك ، نستخدم كائن Tkinter ttk لاستدعاء وظيفة ComboBox لـ Tkinter داخل الإطار 'f'. تم تمرير القائمة 'l' إليها. يتم حفظ مربع التحرير والسرد هذا في المتغير 'C'. قمنا بتعيين ملصق ComboBox باستخدام وظيفة 'set' وقمنا بتعبئة ComboBox بحشوات دقيقة. الآن ، نقوم بتنفيذ الدالة mainloop () لتنفيذ برنامج Tkinter الكلي.



بعد إكمال نص Python ، نحفظ الكود باستخدام Ctrl + S ونعود إلى وحدة تحكم shell في نظام Linux. نجرب تعليمات Python3 في الغلاف متبوعة باسم ملف Python لتنفيذ الملف كما هو معروض في ما يلي:

$ python3 test.py



بعد تنفيذ الاستعلام ، نحصل على Tkinter GUI التالي على شاشة وحدة التحكم الخاصة بنا بعنوان 'tk'. تحتوي شاشة واجهة المستخدم الرسومية على مربع تحرير وسرد ، أي قائمة منسدلة ، بعنوان 'اختر لونًا واحدًا' وعلامة مثلث لفتحه.

بعد النقر على علامة المثلث ، تظهر القائمة المنسدلة الطويلة بكل خياراتها المتاحة. يمكنك أن ترى أن لدينا إجمالي 5 خيارات متاحة للاختيار من بينها.

لنفترض أنك اخترت اللون 'أسود' من القائمة المنسدلة. سترى أن اللون المحدد يظهر في منطقة العنوان في مربع تحرير وسرد منسدل. القائمة المتبقية مخفية.

المثال 2:

دعونا نلقي نظرة على مثال آخر باستخدام طريقة مختلفة لإنشاء ComboBox في Tkinter هذه المرة. وبالتالي ، نبدأ كود Python باستيراد وحدة Tkinter في نفس ملف Python مثل 'tk' مع استيراد فئة ttk منه. بعد ذلك ، نقوم باستيراد وظيفة showinfo () من فئة مربع الرسائل في وحدة Tkinter. أيضًا ، نقوم باستيراد متغير month_name من وحدة التقويم في Python.

نسمي الدالة tk () مع الكائن tk لوحدة Tkinter ونحفظ نتيجة المُنشئ في المتغير 't'. يتم استدعاء وظيفة الهندسة بمعلمات محددة لإنشاء واجهة المستخدم الرسومية لـ Tkinter بحجم معين. يتم استدعاء الوظيفة title () بمعامل 'Combobox Illustration' لتعيين عنوان Tkinter GUI ووظيفة Label من فئة ttk لإنشاء ملصق 'l'. تستخدم وظيفة الحزمة لملء الملصق 'l'. يتم إنشاء المتغير 'mn' باستخدام وظيفة StringVar () لفئة 'tk'. يتم إنشاء ComboBox 'mcb' باستخدام وظيفة ComboBox والنص المتغير 'mn'. يتم ملء mcb ComboBox بقيم سلسلة تصل إلى 13 عبر متغير month_name المستخدم في حلقة 'for'.

تم تعيين حالة 'mcb' ComboBox للقراءة فقط ويتم تعبئتها. يتم إنشاء وظيفة select () لاستدعاء وظيفة showinfo () لإنشاء مربع حوار تنبيه بعنوان 'تأكيد' ورسالة 'لقد اخترت {أيًا كانت القيمة}. يتم استدعاء الوظيفة bind () مع ComboBox 'mcb' عن طريق إضافة معلمات 'ComboboxSelected' ووظيفة 'التغيير'. يتم تنفيذ وظيفة mainloop () لتكرار برنامج Tkinter. دعونا نحفظه أولا قبل الجري.

نقوم بتنفيذ هذا الملف باستخدام استعلام python3.

$ الثعبان 3 test.py

تظهر شاشة Tkinter التالية المسماة 'ComboBox illustration' في ما يلي:

عندما نضغط على علامة مثلث ComboBox أسفل عنوان 'اختر شهرًا' ، فإنها تعرض أسماء الشهر.

عندما نختار 'يوليو' ، يتم عرضه على الملصق ويظهر تنبيه الحوار ورسالة. اضغط على 'موافق' للمتابعة.

استنتاج

هذا كله يتعلق باستخدام وحدة Tkinter في Python لإنشاء مربع تحرير وسرد في نافذة واجهة المستخدم الرسومية. لهذا ، جربنا مثالين بسيطين ولكن مختلفين لبيثون لتحقيق الهدف باستخدام وظيفة الإطار () والطريقة التقليدية لإنشاء مربع التحرير والسرد في واجهة المستخدم الرسومية. قمنا بدمج نماذج الرموز لكلتا الحالتين وقمنا ببعض التغييرات بعد تنفيذ الرموز.