في عالم برمجة Python، تقوم النافذة القياسية بعرض المحتوى داخل إطار مستطيل، ولكنه يمكن تخصيص شكل النافذة بواسطة مكتبة tkinter
. يمكنك تحقيق الشكل المخصص الذي تريده باستخدام بعض الخطوات البسيطة.
أولاً وقبل كل شيء، يجب عليك التأكد من أنك قد قمت بتثبيت مكتبة tkinter
على جهاز الكمبيوتر الخاص بك، حيث تأتي tkinter
مع Python بشكل افتراضي.
بداية، يمكنك استخدام الكود التالي لإنشاء نافذة بشكل مخصص:
pythonimport tkinter as tk
# إعداد النافذة
window = tk.Tk()
window.title("نافذة مخصصة")
# تعيين شكل النافذة
window.wm_attributes("-type", "splash")
window.overrideredirect(True)
# تعيين الأبعاد والموقع
window.geometry("300x200+100+100")
# إضافة نص إلى النافذة
label = tk.Label(window, text="مرحبًا بك في نافذتي المخصصة!", font=("Helvetica", 14))
label.pack(pady=20)
# تشغيل النافذة
window.mainloop()
هنا، تم استخدام خاصية wm_attributes
لتحديد نوع النافذة كـ “splash” واستخدام overrideredirect
لإخفاء الحدود والشريط العلوي. يمكنك تعديل الأبعاد والموقع والنص حسب احتياجاتك.
لكي تحصل على شكل مخصص مثل الصورة التي أرفقتها، يمكنك استخدام صورة PNG ذات خلفية شفافة واستخدامها كخلفية للنافذة. فيما يلي كيفية فعل ذلك:
pythonfrom tkinter import PhotoImage
# إعداد النافذة
window = tk.Tk()
window.title("نافذة مخصصة")
# إعداد صورة مخصصة
custom_image = PhotoImage(file="path/to/your/image.png")
# إعداد النافذة لاستخدام الصورة كخلفية
label = tk.Label(window, image=custom_image)
label.place(x=0, y=0, relwidth=1, relheight=1)
# تعيين الأبعاد والموقع
window.geometry("300x200+100+100")
# إضافة نص إلى النافذة
label_text = tk.Label(window, text="مرحبًا بك في نافذتي المخصصة!", font=("Helvetica", 14), fg="white")
label_text.pack(pady=20)
# تشغيل النافذة
window.mainloop()
يرجى استبدال “path/to/your/image.png” بمسار الصورة الخاصة بك. هذا الكود يستخدم Label
لعرض الصورة كخلفية ويضيف نصًا باللون الأبيض ليظهر فوق الصورة.
تأكد من تحديد المسار بشكل صحيح لصورتك وتعديل النص والأبعاد حسب احتياجاتك.
المزيد من المعلومات
بالطبع، دعونا نوسع أكثر على الكود ونضيف بعض التوضيحات حول الخطوات المستخدمة في إنشاء النافذة المخصصة بشكل مستطيل مع صورة ذات خلفية شفافة.
أولاً، لنتحدث عن الخصائص التي استخدمناها في الكود:
-
wm_attributes
: هذه الخاصية تُستخدم لتعيين خصائص لنافذة tkinter. في هذا السياق، تم استخدامها لتعيين نوع النافذة إلى “splash”، مما يخفي حدود النافذة والشريط العلوي. -
overrideredirect
: هذه الخاصية تُستخدم لتحديد ما إذا كانت نوافذ tkinter يجب أن تتجاوز (تتجاوز) نوافذ النظام أم لا. في هذا السياق، تم تعيينها إلىTrue
لإخفاء حدود النافذة. -
geometry
: هذه الوظيفة تستخدم لتحديد حجم النافذة وموقعها الابتدائي على الشاشة. في المثال، تم تعيين حجم النافذة إلى “300×200” ووضعها على موقع “100+100”. -
Label
: تُستخدم لعرض النص أو الصورة في نافذة tkinter. في الكود، تم استخدامها لعرض النص والصورة. -
PhotoImage
: تُستخدم لتحميل الصورة من ملف واستخدامها فيLabel
كخلفية.
الآن، يمكنك توسيع الكود ليتضمن تفاصيل أكثر حول كيفية إضافة نص إلى النافذة وتحديد موقعه بالنسبة للصورة:
pythonimport tkinter as tk
from tkinter import PhotoImage
# إعداد النافذة
window = tk.Tk()
window.title("نافذة مخصصة")
# إعداد صورة مخصصة
custom_image = PhotoImage(file="path/to/your/image.png")
# إعداد النافذة لاستخدام الصورة كخلفية
label_image = tk.Label(window, image=custom_image)
label_image.place(x=0, y=0, relwidth=1, relheight=1)
# تعيين الأبعاد والموقع
window.geometry("300x200+100+100")
# إضافة نص إلى النافذة
label_text = tk.Label(window, text="مرحبًا بك في نافذتي المخصصة!", font=("Helvetica", 14), fg="white")
label_text.pack(pady=20)
# تشغيل النافذة
window.mainloop()
يرجى تغيير “path/to/your/image.png” إلى مسار الصورة الخاصة بك. الكود يقوم الآن بوضع الصورة كخلفية ويضيف نصًا أبيض اللون يظهر فوق الصورة. يمكنك تحديد موقع النص بشكل دقيق باستخدام place
وتحديد الأبعاد بمزيد من التحكم في relwidth
و relheight
.