Google Docs: abo elroshed


import tkinter as tk
from tkinter import ttk, messagebox
from PIL import Image, ImageTk # لتحميل الصور بشكل أفضل

إنشاء النافذة الرئيسية

root = tk.Tk()
root.title(“برنامج الذكاء الصناعي - اختيار الشخصية”)
root.geometry(“600x400”)
root.configure(bg=“#f0f0f0”)

إضافة عنوان البرنامج

title_label = tk.Label(root, text=“مرحبًا بكم في برنامج الذكاء الصناعي”, font=(“Arial”, 20, “bold”), bg=“#f0f0f0”, fg=“#333333”)
title_label.pack(pady=20)

دالة لتحميل الصور

def load_image(image_path, size=(200, 200)):
try:
image = Image.open(image_path)
image = image.resize(size, Image.ANTIALIAS)
return ImageTk.PhotoImage(image)
except Exception as e:
print(f"خطأ في تحميل الصورة: {e}")
return None

إضافة صورة البرنامج

ai_image = load_image(“ai_image.png”) # تأكد من وجود ملف ai_image.png في نفس المجلد
if ai_image:
image_label = tk.Label(root, image=ai_image, bg=“#f0f0f0”)
image_label.pack(pady=10)
else:
image_label = tk.Label(root, text=“صورة البرنامج”, font=(“Arial”, 16), bg=“#f0f0f0”, fg=“#666666”)
image_label.pack(pady=10)

قائمة الشخصيات مع صورها

characters = {
“رجل”: {“details”: “شخصية رجل”, “image”: “man.png”},
“امرأة”: {“details”: “شخصية امرأة”, “image”: “woman.png”},
“طفل”: {“details”: “شخصية طفل”, “image”: “child.png”},
“شيخ”: {“details”: “شخصية شيخ”, “image”: “old_man.png”}
}

إضافة قائمة الشخصيات

character_label = tk.Label(root, text=“اختر الشخصية المفضلة لديك:”, font=(“Arial”, 16), bg=“#f0f0f0”, fg=“#333333”)
character_label.pack(pady=10)

character_var = tk.StringVar(root)
character_var.set(list(characters.keys())[0]) # القيمة الافتراضية
character_menu = ttk.Combobox(root, textvariable=character_var, values=list(characters.keys()), font=(“Arial”, 14))
character_menu.pack(pady=10)

إطار لعرض صورة الشخصية المختارة

character_image_label = tk.Label(root, bg=“#f0f0f0”)
character_image_label.pack(pady=10)

وظيفة لعرض تفاصيل الشخصية المختارة

def show_character_details():
selected_character = character_var.get()
details = characters[selected_character][“details”]

# تحميل صورة الشخصية المختارة
image_path = characters[selected_character]["image"]
character_image = load_image(image_path, size=(150, 150))

if character_image:
    character_image_label.config(image=character_image)
    character_image_label.image = character_image  # لمنع الصورة من الاختفاء بسبب جمع القمامة
else:
    character_image_label.config(text="لا توجد صورة متاحة", font=("Arial", 14), fg="#666666")

messagebox.showinfo("تفاصيل الشخصية", f"تم اختيار {selected_character}: {details}")

إضافة زر عرض التفاصيل

details_button = tk.Button(root, text=“عرض التفاصيل”, font=(“Arial”, 16), bg=“#4CAF50”, fg=“#ffffff”, command=show_character_details)
details_button.pack(pady=20)

تشغيل النافذة

root.mainloop()

Hi @Shrif_Roshdy, It seems the code uses smart quotes (“ ”) which can lead to syntax errors. Try replacing (“ ”) quotes with standard single quotes (' ') or double quotes (" "). Thank you!