Bir Yapılacaklar uygulaması, gelişmekte olan herhangi bir programcı için klasik bir projedir. Python ve Tkinter kullanarak bir tane oluşturmayı öğrenin.
Bazen görev yöneticisi olarak da adlandırılan Yapılacaklar uygulaması, kullanıcıların görevlerini daha etkin bir şekilde organize etmelerine ve yönetmelerine olanak tanır. Günlük veya haftalık görevlerin bir listesini oluşturabilir, son tarihler ve hatırlatıcılar belirleyebilir, öncelik sırasına koyabilir, ilerlemelerini takip edebilir ve başkalarıyla paylaşabilirsiniz.
Yapılacaklar uygulaması, zamanı yönetmenize, üretkenliği artırmanıza ve stresi azaltmanıza olanak tanır. Peki, Python'da nasıl bir tane oluşturabilirsiniz?
Tkinter Modülü
Yapılacaklar uygulamasını oluşturmak için Tkinter'ı kullanabilirsiniz. Tkinter, masaüstü uygulamaları oluşturmanıza olanak tanır. Uygulama geliştirmeyi kolaylaştıran düğmeler, etiketler ve metin kutuları gibi çeşitli widget'lar sunar. Tkinter kullanarak geliştirebileceğiniz bazı uygulamalar şunları içerir: sözlük uygulaması, Müzik çalar, A Ağırlık Dönüştürme aracıve bir kelime karıştırma oyunu.
Tkinter'ı kurmak için bir terminal açın ve şunu çalıştırın:
pip kurulumu tkinter
Python Kullanarak Yapılacaklar Uygulaması Nasıl Oluşturulur
Yapılacaklar Uygulamasının kaynak kodunu burada bulabilirsiniz. GitHub deposu.
Tkinter modülünü içe aktarın ve kök pencereyi başlatın. Kullanmak yapılandır() işlevi, arka plan rengini ayarlayın. Ayrıca pencerenin başlığını ve boyutunu da ayarlayın.
itibaren tkinter içe aktarmak *
itibaren tkinter.yazı tipi içe aktarmak Yazı tipi
kök = Tk()
root.config (arka plan="#A020f0")
root.title('Yapılacaklar Listesi Uygulaması')
kök.geometri("750x500")
Bir yazı tipi stili ve bir çerçeve parçacığı tanımlayın. Çerçeve, kap görevi görür ve diğer pencere öğelerinin konumunu ayarlamaktan sorumludur. Yerleştirmek istediğiniz ana pencereyi ayarlayın ve ona 10'luk bir dikey dolgu verin.
Bir liste kutusu widget'ı tanımlayın. Bu bileşen, kullanıcının seçmesi için bir öğe listesi görüntüler. Yerleştirmek istediğiniz ana pencereyi, yazı tipi stilini, genişliği, yüksekliği, arka plan rengini, kenarlık genişliğini ve yazı tipi rengini ayarlayın. Ayrıca, odak vurgusunun kalınlığını, seçildiğinde sahip olması gereken arka plan rengini ve etkin çizginin görünümünü şu şekilde ayarlayın: Hiçbiri.
Listeyi sol tarafa yerleştirerek ve her iki yöndeki fazla boşlukları doldurmasını söyleyerek düzenleyin.
my_font = Yazı Tipi (aile="Arial", boyut=22, ağırlık="gözü pek")
my_frame = Çerçeve (kök)
my_frame.pack (çeltik=10)
my_list = Listbox (my_frame, font=my_font, genişlik=40, yükseklik=7, bg="#cf9fff", bd=0, fg="#5c4033", vurgu kalınlığı=0, arka plan seç="#ff0000", aktif stil="hiçbiri")
my_list.pack (kenar=SOL, dolgu=İKİSİ)
Programın çerçevenin sağ tarafında görüntüleyerek her iki yönde de fazladan boşlukları dolduracağı bir kaydırma çubuğu tanımlayın. Kullan yapılandırma() kaydırma çubuğunu daha önce tanımladığınız liste kutusu parçacığına bağlama yöntemi. değerini ayarlarken kaydırma komutu gibi my_scrollbar.set kullanıcı etkileşiminde kaydırma çubuğunun mevcut konumunu alır.
Komut parametresini şu şekilde ayarlarken benim_listem.yview, kaydırma çubuğunun hareketi yukarı ve aşağı işlevlerine bağlanır. Böylece, kullanıcı kaydırma çubuğuyla etkileşime geçtiğinde, liste kutusu görünümleri buna göre değişir.
my_scrollbar = Kaydırma çubuğu (my_frame)
my_scrollbar.pack (yan=SAĞ, dolgu=İKİSİ)
my_list.config (yscrollcommand=my_scrollbar.set)
my_scrollbar.config (command=my_list.yview)
Görevleri kullanıcıdan girdi olarak kabul etmek için bir giriş widget'ı tanımlayın. Yerleştirmek istediğiniz ana pencereyi, yazı tipi stilini, genişliği ve arka plan rengini ayarlayın. Dikey yönde 20'lik bir dolgu ekleyerek düzenleyin.
Düğmelerinizi düzenlemek için bir çerçeve tanımlayın. Bunları kök pencereye yerleştirin ve ona bir arka plan rengi verin. Çerçeveyi dikey yönde de 20'lik bir dolguyla düzenleyin.
my_entry = Girdi (kök, font=("Arial", 22), genişlik=26, bg="#cf9ffff")
my_entry.pack (çeltik=20)
button_frame = Çerçeve (kök, bg="#a020f0")
button_frame.pack (çeltik=20)
Bir işlev tanımlayın, öğeyi silmek(). Geç ÇAPA seçilen öğeyi listeden kaldırmak için silme işlevine parametre.
kesinöğeyi silmek():
my_list.delete (ANCHOR)
Bir işlev tanımlayın, öğe eklemek(). Kullan elde etmek() kullanıcı tarafından girilen değeri listenin sonuna getirmek için işlev. Liste boşsa, eklenen öğe listedeki ilk giriş olur. Öğeyi listeye ekledikten sonra, onu giriş widget'ından kaldırmanız gerekir. Başından sonuna eklenen metni uzunluğunun sonuna kadar kaldırmak için silme işlevini kullanın.
kesinöğe eklemek():
my_list.insert (END, my_entry.get())
benim_entry.delete(0, SON)
Bir işlev tanımlayın, cross_off_item(). Kullan item_config() Listedeki seçili öğe görevinin yazı tipi rengini soluk bir renge değiştirme yöntemi, öğenin üzerini çizdiniz. Şimdi yaptığınız seçimi uzunluğunun başından sonuna kadar temizleyin.
kesincross_off_item():
my_list.itemconfig (my_list.curselection(), fg="#dedede")
my_list.selection_clear(0, SON)
Bir işlev tanımlayın, uncross_item(). Yukarıdaki işleve benzer şekilde, seçilen görevin rengini orijinaline döndürün ve seçimi tamamen temizleyin.
kesinuncross_item():
my_list.itemconfig (my_list.curselection(), fg="#5c4033")
my_list.selection_clear(0, SON)
Bir işlev tanımlayın, sil_çapraz(). Bir sayaç değişkeni tanımlayın ve listenin boyutundan küçük olana kadar yineleyin. Öğenin yazı tipi rengi soluksa, o öğeyi listeden silin. Aksi takdirde, sayaç değişkenini artırarak yinelemeye devam edin.
kesinsil_çapraz():
saymak = 0
sırasında say < my_list.size():
eğer my_list.itemcget (sayım, "fg") == "#dedede":
my_list.delete (my_list.index (sayı))
başka:
saymak += 1
Beş düğme tanımlayın: sil, ekle, üzerini çiz, çaprazını kaldır ve üzerini sil. Düğmeleri daha önce oluşturduğunuz düğme çerçevesine yerleştirin. Her düğmenin görüntülemesi gereken metni, tıklattığınızda çalıştırması gereken işlevi, arka plan rengini ve yazı tipi stilini ayarlayın.
delete_button = Düğme (düğme_çerçevesi, metin="Öğeyi silmek", komut=delete_item, bg="#e7305b", yazı tipi=("arial", 12, "gözü pek"))
add_button = Düğme (düğme_çerçevesi, metin="Öğe eklemek", komut=add_item, bg="#e7305b", yazı tipi=("arial", 12, "gözü pek"))
cross_off_button = Düğme (düğme_çerçevesi, metin="Öğenin Üstünü Çiz", komut=cross_off_item, bg="#e7305b", yazı tipi=("arial", 12, "gözü pek"))
uncross_button = Düğme (düğme_çerçevesi, metin="Çapraz Öğeyi Kaldır", komut=uncross_item, bg="#e7305b", yazı tipi=("arial", 12, "gözü pek"))
delete_crossed_button = Düğme (düğme_çerçevesi, metin="Çapraz Sil", komut=delete_crossed, bg="#e7305b", yazı tipi=("arial",12, "gözü pek"))
Izgara yöneticisini kullanarak düğmeleri tek bir satır ve beş sütun halinde düzenleyin. Düğmeler arasında biraz boşluk bırakmak için yatay yönde 0 dolgusu ayarlayın,
delete_button.grid (satır=0, sütun=0)
add_button.grid (satır=0, sütun=1, padx=20)
cross_off_button.grid (satır=0, sütun=2)
uncross_button.grid (satır=0, sütun=3, padx=20)
delete_crossed_button.grid (satır=0, sütun=4)
bu Ana döngü() işlevi, Python'a Tkinter olay döngüsünü çalıştırmasını ve siz pencereyi kapatana kadar olayları dinlemesini söyler.
root.mainloop()
Tüm kodu bir araya getirin ve bu verimli Yapılacaklar Listesi uygulamasını kullanarak hiçbir görevi kaçırmayın.
Python Kullanarak Yapılacaklar Uygulamasının Çıktısı
Yukarıdaki programı çalıştırdığınızda, tamamlamak istediğiniz görevleri girebileceğiniz bir pencere açılır. Görevi ekleyip düğmesine bastığınızda Öğe eklemek düğmesi, görev ekrana eklenir.
Fare/klavye ile görevlerden herhangi birini seçip Öğenin Üstünü Çiz düğmesine bastığınızda, seçilen görevin rengi değişir ve soluklaşır.
Çapraz öğeyi seçip tıklattığınızda Öğenin çaprazını kaldır düğmesine bastığınızda, program görevi orijinal rengine geri vurgular.
tıklayınca Çapraz Sil düğmesine bastığınızda, program üzeri çizili görevi siler. Herhangi bir öğeyi seçip tıkladığınızda Öğeyi silmek düğmesine bastığınızda, seçilen öğe kaldırılır.
Üretkenliğinizi Arttırmak için Python Kullanarak Oluşturabileceğiniz Uygulamalar
Bir kullanıcının hangi uygulamada ne kadar zaman harcadığını izleyen RescueTime gibi uygulamalar oluşturabilirsiniz. Bu tür uygulamalar, hangi web sitelerinin dikkatinizi en çok dağıtmasına neden olduğunu keşfetmenize yardımcı olabilir. Bunun dışında yapılacaklar listesi, son tarihler ve hatırlatıcılar içeren panolar oluşturmak için Trello'dan ilham alabilirsiniz.
Özel olarak tasarlanmış bir çalma listesini çalan bir müzik uygulaması, kullanıcıların konsantre olmasına ve işine odaklanmasına yardımcı olabilir. Oturum açma işlemleri ve masaüstüyle etkileşim kurmak için komut dosyaları gibi tekrarlayan görevleri gerçekleştirmek için GUI programlarını bile otomatikleştirebilirsiniz.