الدرس 24 من 56 · ألعاب وتطبيقات UI/UX

مشروع ختامي: تطبيق ملاحظات بواجهة وقاعدة بيانات

نجمع كل شي تعلمناه: tkinter + SQLite + كلاس:

import tkinter as tk, sqlite3

class NotesApp:
    def __init__(self, win):
        self.c = sqlite3.connect("notes.db")
        self.c.execute("CREATE TABLE IF NOT EXISTS n (id INTEGER PRIMARY KEY, txt TEXT)")
        self.win = win
        win.title("دفتر فليكس")
        self.e = tk.Entry(win, width=30); self.e.pack(pady=8)
        tk.Button(win, text="أضف", command=self.add).pack()
        self.lst = tk.Listbox(win, width=35); self.lst.pack(pady=8)
        self.load()

    def add(self):
        self.c.execute("INSERT INTO n (txt) VALUES (?)", (self.e.get(),))
        self.c.commit(); self.e.delete(0, "end"); self.load()

    def load(self):
        self.lst.delete(0, "end")
        for r in self.c.execute("SELECT txt FROM n"):
            self.lst.insert("end", r[0])

w = tk.Tk()
NotesApp(w)
w.mainloop()

بهذا المشروع أنجزت: أساسيات، دوال، كلاسات، ملفات، قاعدة بيانات، وواجهة. جاهز للاختبار العملي 🎓

اختبار سريع للدرس

جاوب على كل الأسئلة — لازم كلها صح. إذا غلطت بيطلع صندوق ذهبي يفهّمك وش الخطأ. مو عيب تغلط، كل مبرمج بالعالم غلط وأخذ منها درس.

1. كيف نضيف نصاً لحقل فارغ؟
2. لماذا ? مع INSERT؟
3. وش ينفذ عند إنشاء NotesApp(w)؟
الدرس 23 الدرس 25 — كلمة المرور: مفتاح بيتك الرقمي
FeLiXFeLiX AI — مساعد المنصتين