Python - GUI Programlamaya (Tkinter) Giriş
Python, grafiksel kullanıcı arayüzleri (GUI'ler) geliştirmek için çeşitli seçenekler sunar. En önemlileri aşağıda listelenmiştir.
-
Tkinter - Tkinter, Python ile birlikte gönderilen Tk GUI araç setinin Python arayüzüdür. Bu bölümde bu seçeneğe bakacağız.
-
wxPython – Bu, wxWindows http://wxpython.org için açık kaynaklı bir Python arayüzüdür .
-
JPython – JPython, Python komut dosyalarına http://www.jython.org yerel makinesindeki Java sınıfı kitaplıklarına kesintisiz erişim sağlayan, Java için bir Python bağlantı noktasıdır .
İnternette bulabileceğiniz birçok başka arayüz de vardır.
Tkinter Programlama
Tkinter, Python için standart GUI kütüphanesidir. Python, Tkinter ile birleştirildiğinde GUI uygulamaları oluşturmanın hızlı ve kolay bir yolunu sağlar. Tkinter, Tk GUI araç setine güçlü bir nesne yönelimli arayüz sağlar.
Tkinter'ı kullanarak bir GUI uygulaması oluşturmak kolay bir iştir. Tek yapmanız gereken aşağıdaki adımları gerçekleştirmektir
-
Tkinter modülünü içe aktarın .
-
GUI uygulaması ana penceresini oluşturun.
-
Yukarıda belirtilen widget'lardan bir veya daha fazlasını GUI uygulamasına ekleyin.
-
Kullanıcı tarafından tetiklenen her olaya karşı önlem almak için ana olay döngüsüne girin.
Örnek
#!/usr/bin/python import Tkinter top = Tkinter.Tk() # Code to add widgets will go here... top.mainloop()
Bu, aşağıdaki bir pencere yaratacaktır –
Tkinter Widget'ları
Tkinter, bir GUI uygulamasında kullanılan düğmeler, etiketler ve metin kutuları gibi çeşitli kontroller sağlar. Bu kontrollere genellikle widget denir.
Şu anda Tkinter'da 15 tür widget bulunmaktadır. Bu widget'ların yanı sıra kısa bir açıklamayı da aşağıdaki tabloda sunuyoruz:
Kıdemli Hayır. | Operatör ve Açıklama |
---|---|
1 | Button / Düğme
Düğme widget'ı, uygulamanızdaki düğmeleri görüntülemek için kullanılır. |
2 | Canvas / Tuval
Canvas widget'ı uygulamanızda çizgiler, ovaller, çokgenler ve dikdörtgenler gibi şekiller çizmek için kullanılır. |
3 | Checkbutton / Onay düğmesi
Onay düğmesi widget'ı, bir dizi seçeneği onay kutusu olarak görüntülemek için kullanılır. Kullanıcı aynı anda birden fazla seçeneği seçebilir. |
4 | Entry / Giriş
Giriş widget'ı, bir kullanıcıdan gelen değerleri kabul etmek için tek satırlık bir metin alanı görüntülemek için kullanılır. |
5 | Frame / Çerçeve
Çerçeve widget'ı, diğer widget'ları düzenlemek için bir kap widget'ı olarak kullanılır. |
6 | Label / Etiket
Etiket widget'ı, diğer widget'lara tek satırlık başlık sağlamak için kullanılır. Ayrıca görseller de içerebilir. |
7 | Listbox / Liste kutusu
Liste Kutusu widget'ı, kullanıcıya seçeneklerin bir listesini sağlamak için kullanılır. |
8 | Menubutton / Menü butonu
Menubutton widget'ı uygulamanızdaki menüleri görüntülemek için kullanılır. |
9 | Menu / Menü
Menü widget'ı kullanıcıya çeşitli komutlar sağlamak için kullanılır. Bu komutlar Menubutton'un içinde bulunur. |
10 | Message / İleti
Mesaj widget'ı, bir kullanıcıdan gelen değerleri kabul etmek amacıyla çok satırlı metin alanlarını görüntülemek için kullanılır. |
11 | Radiobutton / Radyo düğmesi
Radyo Düğmesi widget'ı, çeşitli seçenekleri radyo düğmeleri olarak görüntülemek için kullanılır. Kullanıcı aynı anda yalnızca bir seçeneği seçebilir. |
12 | Scale / Ölçek
Ölçek widget'ı bir kaydırıcı widget'ı sağlamak için kullanılır. |
13 | Scrollbar / Kaydırma çubuğu
Kaydırma çubuğu widget'ı, liste kutuları gibi çeşitli widget'lara kaydırma özelliği eklemek için kullanılır. |
14 | Text / Metin
Metin widget'ı, metni birden çok satırda görüntülemek için kullanılır. |
15 | Toplevel / Üst düzey
Üst Düzey widget'ı ayrı bir pencere kapsayıcısı sağlamak için kullanılır. |
16 | Spinbox / Döndürme kutusu
Spinbox widget'ı, standart Tkinter Entry widget'ının sabit sayıda değer arasından seçim yapmak için kullanılabilen bir çeşididir. |
17 | PanedWindow / PanedPencere
PanedWindow, yatay veya dikey olarak düzenlenmiş herhangi bir sayıda bölme içerebilen bir kap widget'ıdır. |
18 | LabelFrame / Etiket Çerçevesi
Labelframe basit bir konteyner widget'ıdır. Birincil amacı, karmaşık pencere düzenleri için aralayıcı veya kap görevi görmektir. |
19 | tkMessageBox / tkMesajKutusu
Bu modül uygulamalarınızdaki mesaj kutularını görüntülemek için kullanılır. |
Bu widget'ları ayrıntılı olarak inceleyelim –
Standart özellikler
Boyutlar, renkler ve yazı tipleri gibi bazı ortak özelliklerinin nasıl belirlendiğine bir göz atalım.
Bunları kısaca inceleyelim –
Geometri Yönetimi
Tüm Tkinter widget'ları, ana widget alanı boyunca widget'ları organize etme amacını taşıyan belirli geometri yönetimi yöntemlerine erişime sahiptir. Tkinter şu geometri yöneticisi sınıflarını kullanıma sunar: pack, grid ve place.
-
Pack () Yöntemi – Bu geometri yöneticisi, widget'ları ana widget'a yerleştirmeden önce bloklar halinde düzenler.
-
Grid () Yöntemi – Bu geometri yöneticisi, ana pencere öğesindeki pencere öğelerini tablo benzeri bir yapıda düzenler.
-
Place () Yöntemi – Bu geometri yöneticisi, widget'ları ana widget'ta belirli bir konuma yerleştirerek düzenler.
Geometri yönetimi yöntemlerini kısaca inceleyelim –
Kaynak