[text] enesns

Viewer

  1. from tkinter import *
  2. from tkinter import messagebox as tkMessageBox
  3. import sqlite3
  4.  
  5. def ÖĞRENCİKAYDET():
  6.     liste = []
  7.     for i in range(Lb1.size()):
  8.         liste.append(Lb1.get(i).split(' '))
  9.     baglanti.execute("DELETE FROM ogrenciler")
  10.     baglanti.executemany("INSERT INTO ogrenciler VALUES(?,?,?)",liste)
  11.     baglanti.commit()
  12.  
  13. def EKLE():
  14.     Lb1.insert(END, inputno.get() + ' ' +  inputisim.get() + ' ' + inputsoy.get())
  15.     baglanti.execute("INSERT INTO ogrenciler VALUES(?,?,?)",
  16.                      [inputno.get(), inputisim.get(), inputsoy.get()])
  17.     baglanti.commit()
  18.     ÖĞRENCİKAYDET()
  19.  
  20. def SİL():
  21.     if tkMessageBox.askyesno("UYARI", "Seçili Kayıtları silmek istediğinize emin misiniz?"):
  22.         for i in range(Lb1.size(), 0,-1):
  23.             if Lb1.select_includes(i):
  24.                 baglanti.execute("DELETE FROM ogrenciler WHERE ÖğrNo=? AND Ad=? AND Soyad=?",
  25.                                  Lb1.get(i).split(' '))
  26.                 baglanti.commit()
  27.                 Lb1.delete(i)
  28.                 ÖĞRENCİKAYDET()
  29.  
  30.  
  31. pen = Tk()
  32. pen.geometry("878x380")
  33.  
  34. frame = Frame(pen, bg="#dddddd", bd=5, relief=RIDGE)
  35. frame.pack(side=LEFT, fill=Y)
  36.  
  37. yazi1=Label(frame, text="ÖĞRENCİLER",font="Calibri 20",height=1,bg="#dddddd",anchor=CENTER)
  38. yazi1.grid(row=0,column=1)
  39.  
  40.  
  41. yazino=Label(frame,text="ÖğrNo : ",font="Calibri",anchor=E,width=7,bg="#dddddd")
  42. yazino.grid(row=1, column=0)
  43. inputno = Entry(frame, font="Calibri")
  44. inputno.grid(row=1, column=1)
  45.  
  46. yaziisim=Label(frame,text="Adı : ",font="Calibri",anchor=E,width=7,bg="#dddddd")
  47. yaziisim.grid(row=2, column=0)
  48. inputisim=Entry(frame, font="Calibri")
  49. inputisim.grid(row=2,column=1)
  50.  
  51. yazisoy=Label(frame,text="Soyadı : ",font="Calibri",anchor=E,width=7,bg="#dddddd")
  52. yazisoy.grid(row=3, column=0)
  53. inputsoy=Entry(frame, font="Calibri")
  54. inputsoy.grid(row=3,column=1)
  55.  
  56.  
  57. eklemebutonu=Button(frame,font="Calibri",text="EKLE",command=EKLE)
  58. eklemebutonu.grid(row=4,column=1)
  59.  
  60.  
  61. Lb1=Listbox(frame,width=25,height=7 ,font="Calibri",selectmode="extended",exportselection=0)
  62. Lb1.grid(row=6,column=1)
  63.  
  64.  
  65. silmebutonu = Button(frame, text="Seçili olanları sil", font="Calibri",command=SİL)
  66. silmebutonu.grid(row=8, column=1)
  67.  
  68. baglanti = sqlite3.connect("data.db")
  69. baglanti.execute("CREATE TABLE IF NOT EXISTS ogrenciler (ÖğrNo, Ad, Soyad)")
  70.  
  71.  
  72. for kayıt in baglanti.execute("SELECT * FROM ogrenciler"):
  73.     Lb1.insert(END, kayıt[0] + ' ' + kayıt[1] + ' ' + kayıt[2])
  74.  
  75.  
  76.  
  77. def DERSKAYDET():
  78.     liste = []
  79.     for i in range(Lb2.size()):
  80.         liste.append(Lb2.get(i).split(' '))
  81.     baglanti.execute("DELETE FROM DERSLER")
  82.     baglanti.executemany("INSERT INTO DERSLER VALUES(?,?)",liste)
  83.     baglanti.commit()
  84.  
  85. def DERSEKLE():
  86.     Lb2.insert(END, inputdersisim.get() + ' ' +  inputdersno.get())
  87.     baglanti.execute("INSERT INTO DERSLER VALUES(?,?)",
  88.                      [inputdersisim.get(), inputdersno.get()])
  89.     baglanti.commit()
  90.     DERSKAYDET()
  91.  
  92.  
  93. def DERSSİL():
  94.     if tkMessageBox.askyesno("UYARI", "Seçili Kayıtları silmek istediğinize emin misiniz?"):
  95.         for i in range(Lb2.size(), 0,-1 ):
  96.             if Lb2.select_includes(i):
  97.                 dersno = Lb2.get(i).split(' ')[0]
  98.                 baglanti.execute("DELETE FROM ders WHERE yazidersisim='" + dersno + "'")
  99.                 baglanti.commit()
  100.                 Lb2.delete(i)
  101.                 DERSKAYDET()
  102.  
  103.  
  104. frame2 = Frame(pen, bg="#dddddd", bd=5, relief=RIDGE)
  105. frame2.pack(side=LEFT, fill=Y)
  106.  
  107. yazi2=Label(frame2, text="DERSLER",font="Calibri 20",height=1,bg="#dddddd",anchor=CENTER)
  108. yazi2.grid(row=0,column=1)
  109.  
  110.  
  111. yazidersno=Label(frame2,text="Ders Kodu : ",font="Calibri",anchor=E,width=10,bg="#dddddd")
  112. yazidersno.grid(row=1, column=0)
  113. inputdersno = Entry(frame2, font="Calibri")
  114. inputdersno.grid(row=1, column=1)
  115.  
  116. yazidersisim=Label(frame2,text="Ders Adı : ",font="Calibri",anchor=E,width=10,bg="#dddddd")
  117. yazidersisim.grid(row=2, column=0)
  118. inputdersisim=Entry(frame2, font="Calibri")
  119. inputdersisim.grid(row=2,column=1)
  120.  
  121.  
  122. eklemebutonu2=Button(frame2,font="Calibri",text="EKLE",command=DERSEKLE)
  123. eklemebutonu2.grid(row=4,column=1)
  124.  
  125.  
  126. Lb2=Listbox(frame2,width=25,height=7 ,font="Calibri",selectmode="extended",exportselection=0)
  127. Lb2.grid(row=6,column=1)
  128.  
  129.  
  130. silmebutonu = Button(frame2, text="Seçili olanları sil", font="Calibri",command=DERSSİL)
  131. silmebutonu.grid(row=8, column=1)
  132.  
  133. baglanti = sqlite3.connect("data.db")
  134. baglanti.execute("CREATE TABLE IF NOT EXISTS DERSLER (yazıdersno, yazidersisim)")
  135.  
  136.  
  137. for kayıt in baglanti.execute("SELECT * FROM DERSLER"):
  138.     Lb2.insert(END, kayıt[0] + ' ' + kayıt[1])
  139.  
  140.  
  141.  
  142.  
  143.  
  144. def NOTEKLE():
  145.     Lb3.insert(END, [Lb1.get(ACTIVE).split(' ')[0], Lb2.get(ACTIVE).split(' ')[0], inputvize.get(),
  146.                      inputfinal.get()])
  147.     baglanti.execute("INSERT INTO notlar VALUES(?,?)",
  148.                      [Lb1.get(ACTIVE).split(' ')[0], Lb2.get(ACTIVE).split(' ')[0], inputvize.get(),
  149.                       inputfinal.get()])
  150.     baglanti.commit()
  151.  
  152.  
  153. def NOTSİL():
  154.     if tkMessageBox.askyesno("UYARI", "Seçili Kayıtları silmek istediğinize emin misiniz?"):
  155.         for i in range(Lb3.size(), 0, -1):
  156.             if Lb3.select_includes(i):
  157.                 ogrno = Lb1.get(i).split(' ')[0]
  158.                 derskod = Lb3.get(i).split(' ')[2]
  159.                 baglanti.execute("DELETE FROM notlar WHERE yazino = '" + ogrno + "' and DersKodu= '" + derskod + "'")
  160.                 baglanti.commit()
  161.                 Lb3.delete(i)
  162.  
  163.  
  164. frame3 = Frame(pen, bg="#dddddd", bd=5, relief=RIDGE)
  165. frame3.pack(side=LEFT, fill=Y)
  166.  
  167. yazi3 = Label(frame3, text="NOTLAR", font="Calibri 20", height=1, bg="#dddddd", anchor=CENTER)
  168. yazi3.grid(row=0, column=1)
  169.  
  170. yazivize = Label(frame3, text="Vize Notu : ", font="Calibri", anchor=E, width=10, bg="#dddddd")
  171. yazivize.grid(row=1, column=0)
  172. inputvize = Entry(frame3, font="Calibri")
  173. inputvize.grid(row=1, column=1)
  174.  
  175. yazifinal = Label(frame3, text="Final Notu : ", font="Calibri", anchor=E, width=10, bg="#dddddd")
  176. yazifinal.grid(row=2, column=0)
  177. inputfinal = Entry(frame3, font="Calibri")
  178. inputfinal.grid(row=2, column=1)
  179.  
  180. eklemebutonu3 = Button(frame3, font="Calibri", text="EKLE", command=NOTEKLE)
  181. eklemebutonu3.grid(row=4, column=1)
  182.  
  183. Lb3 = Listbox(frame3, width=25, height=7, font="Calibri", selectmode="extended", exportselection=0)
  184. Lb3.grid(row=6, column=1)
  185.  
  186. silmebutonu3 = Button(frame3, text="Seçili olanları sil", font="Calibri", command=NOTSİL)
  187. silmebutonu3.grid(row=8, column=1)
  188.  
  189. baglanti = sqlite3.connect("data.db")
  190. baglanti.execute("CREATE TABLE IF NOT EXISTS notlar( Vize, Final)")
  191.  
  192. for kayıt in baglanti.execute("SELECT * FROM notlar"):
  193.     Lb3.insert(END, kayıt[0] + '  ' + kayıt[1] + '  ' + kayıt[2] + ' ' + kayıt[3] + ' ')
  194.  
  195.  
  196.  
  197.  
  198. pen.mainloop()

Editor

You can edit this paste and save as new:


File Description
  • enesns
  • Paste Code
  • 21 May-2020
  • 6.72 Kb
You can Share it: