Python tkinter ile veri insertleme

wiskypeek

Hectopat
Katılım
30 Kasım 2020
Mesajlar
50
Makaleler
1
Daha fazla  
Cinsiyet
Erkek
Çok yardımınız lazım arkadaşlar.

2 Listbox olacak.

1. Listboxta film konuları (3 adet olacak)

2. Listboxta film konularına göre film isimlerini insertleyecek.

Sizlerden istediğim bu;
Untitled.png
 
Son düzenleyen: Moderatör:
Muhtemelen derslerde bunları gördünüz. Hatta 2 gün kaldı demenize bakarsak daha önceden de bu ödev verilmiş ve her tr öğrencisi gibi sizde son ana bırakmışsınız. Uğraşması gereken aslında sizsiniz. Çünkü sizin adınıza yapılacak bu ödevden geçer not dışında kendinize katacak başka bir katma değeriniz olmayacak.

Yazdığınız kodu paylaşsaydınız; şurada hata yaptım, şöyle tıkandım, bunu yaptım ama olmuyor,....
emin olun şu anda konuyu görüp cevap vermek istemeyen kullanıcıların cevap vermesini de sağlardınız.


Yazdığınız kodu paylaşmalı, istekten ziyade ricada bulunulmalı.
 
Muhtemelen derslerde bunları gördünüz. Hatta 2 gün kaldı demenize bakarsak daha önceden de bu ödev verilmiş ve her tr öğrencisi gibi sizde son ana bırakmışsınız. Uğraşması gereken aslında sizsiniz. Çünkü sizin adınıza yapılacak bu ödevden geçer not dışında kendinize katacak başka bir katma değeriniz olmayacak.

Yazdığınız kodu paylaşsaydınız; şurada hata yaptım, şöyle tıkandım, bunu yaptım ama olmuyor,....
emin olun şu anda konuyu görüp cevap vermek istemeyen kullanıcıların cevap vermesini de sağlardınız.


Yazdığınız kodu paylaşmalı, istekten ziyade ricada bulunulmalı.
Screenshot_1.png
,

bundan yapmıştım. fakat sadece polisiyenin cevabını veriyor romanında cevabını eklediğimde sadece polisiyenin cevabını atıyor.
 
Kodu öncelikle </> butonuna basıp ilgili dili seçtikten sonra paylaşın ki insanların test etme fırsatı olsun.

List comprehension'ları neden kullandınız ?
Buna çeki düzen vermeniz gerekicek Neden ?
Şundan dolayı: Her bastığınız itemi tekrar diğer listboxa yazdırıyor. Bir değişken tanımlanıp buna sınır getirilir mi bilmiyorum. orası size kalmış 🤷‍♂️

Python:
import tkinter as tk
import _tkinter

def fonksiyon(e):
    try:
        selection = e.widget.curselection()
        if selection:
            index = selection[0]
            data = e.widget.get(index)
            if data == "Korku":
                listbox2.insert("end","Dabbe","Siccin")

            elif data == "Aksiyon":
                listbox2.insert("end","hızlı ve öfkeli","Hacksaw Ridge")
            elif data == "Macera":
                listbox2.insert("end","Pinin yaşamı","Karayip Korsanları")
    except _tkinter.TclError:
        pass
    except Exception:
        pass

root = tk.Tk()
root.geometry("300x200")
listbox1 = tk.Listbox(root)
listbox1.pack(side="left")

listbox2 = tk.Listbox(root)
listbox2.pack(side="right")

liste = ["Korku","Aksiyon","Macera"]
for i in liste:
    listbox1.insert("end",i)

listbox1.bind("<Double-Button-1>",lambda e:fonksiyon(e))
root.mainloop()
1. Listboxta film konuları (3 adet olacak)

2. Listboxta film konularına göre film isimlerini insertleyecek.
Her bastığınız itemi tekrar diğer listboxa yazdırıyor. Bir değişken tanımlanıp buna sınır getirilir mi bilmiyorum.

EDİT:
Üstte yazdığım kodu görmezden gelin ve şunu kullanın:
Python:
import tkinter as tk
import _tkinter

state = False
def fonksiyon(e):
    try:
        global state
        selection = e.widget.curselection()
        if selection:
            index = selection[0]
            data = e.widget.get(index)
            if state == False:
                if data == "Korku":
                    listbox2.insert("end","Dabbe","Siccin")

                elif data == "Aksiyon":
                    listbox2.insert("end","hızlı ve öfkeli","Hacksaw Ridge")
                elif data == "Macera":
                    listbox2.insert("end","Pinin yaşamı","Karayip Korsanları")
                state = True
            elif state == True:
                listbox2.delete(0,tk.END)
                state = False
    except _tkinter.TclError:
        pass
    except Exception:
        pass

root = tk.Tk()
root.geometry("300x200")
listbox1 = tk.Listbox(root)
listbox1.pack(side="left")

listbox2 = tk.Listbox(root)
listbox2.pack(side="right")

liste = ["Korku","Aksiyon","Macera"]
for i in liste:
    listbox1.insert("end",i)

listbox1.bind("<Double-Button-1>",lambda e:fonksiyon(e))
root.mainloop()
Artık gönül rahatlığı ile "Ben yaptım Hocam" diyebilirsiniz :d
(!)
 
Son düzenleme:

Technopat Haberler

Yeni konular

Geri
Yukarı