Masaüstü GUI Uygulaması geliştirmek için alın size 4 farklı Python kütüphanesi kullanmanın yolu;
Adından da anlaşılacağı gibi, GUI (Grafik Kullanıcı Arayüzü), daha kullanışlı ve sezgisel bir bilgisayar arayüzü göstermek için görsellerin kullanılmasıdır.
CUI (Komut Satırı Arayüzü), GUI’ye karşılık gelen popüler bir komut satırı işlemidir. İlk başlarda daha önce hiç komut satırını kullanmamış insanların çalışması ve öğrenmesi GUI’ya oranla daha zordur.
İyi tasarlanmış ve kullanımı basit bir kullanıcı grafik arayüzü, herkesin deneyimini önemli ölçüde iyileştirebilir ve verimliliği artırabilir. Örneğin bir hesap makinesi oluşturmak istiyorsanız, sahip olduğunuz tek şey programa bir giriş ve çıkış yapılan bir penceredir, kullanıcının hesap makinesini kullanması için komut satırı deneyimine ihtiyaç yoktur.
Yazılım geliştiriciler olarak sonuçta, bazen programlarda grafik pencereleri oluşturmamız gerekebilir. Bu yazımda en iyi 4 Python GUI’yi sizler için listeledim.
1. PyQt
İngiliz şirketi Riverbank Computing, PyQt’in yaratıcısıdır. Unix, Windows ve Mac OS dahil olmak üzere çeşitli platformlar için programlar üretebilen Qt çerçevesine dayalı bir çapraz platform çerçevesidir.
PyQt, Qt’yi Python ile karıştıran bir çapraz platform uygulamasıdır. Basit bir grafik kullanıcı arayüzü araç setinden daha fazlasıdır. Threads, Unicode, regular expressions, SQL veritabanları, SVG, OpenGL, XML ve tam teşekküllü bir web tarayıcısının yanı sıra çok sayıda GUI widget’ı sağlar.
Kurulum:
pip3 install PySide6
Kod parçacıkları:
import sys
from PySide6.QtWidgets import QApplication, QWidget, QLabel, QVBoxLayout
app = QApplication(sys.argv)
w = QWidget()
w.resize(500, 500)
w.layout = QVBoxLayout()
w.label = QLabel("Hello World!")
w.label.setStyleSheet("font-size:25px;margin-left:155px;")
w.setWindowTitle("PyQt6 Window")
w.layout.addWidget(w.label)
w.setLayout(w.layout)
w.show()
sys.exit(app.exec_())
Çıktı:
2. Tkinter
Tkinter, Python’un en yaygın kullanılan GUI kütüphanelerinden biridir. Basit sözdizimi nedeniyle GUI programlamasında yeni başlayanlar için birincil seçeneklerden biri olmuştur.
Kurulum:
pip3 install tkinter
Kod parçacıkları:
Bir BMI hesaplayıcısı oluşturmak için Tkinter’ı kullanalım.
Program bir açılır pencerede, girdi olarak kilonuzu ve boyunuzu alır ve BMI katsayınızı verir.
from tkinter import *
from tkinter import messagebox
def get_height():
height = float(ENTRY2.get())
return height
def get_weight():
weight = float(ENTRY1.get())
return weight
def calculate_bmi():
try:
height = get_height()
weight = get_weight()
height = height / 100.0
bmi = weight / (height ** 2)
except ZeroDivisionError:
messagebox.showinfo("Info", "Height")
except ValueError:
messagebox.showinfo("Info", "Invalid Input!!")
else:
messagebox.showinfo("Your BMI is : ", bmi)
if __name__ == '__main__':
TOP = Tk()
TOP.bind("<Return>", calculate_bmi)
TOP.geometry("400x400")
TOP.configure(background="#03adfc")
TOP.title("BMI Calculator")
TOP.resizable(width=False, height=False)
LABLE = Label(TOP, bg="#03adfc", fg="#ffffff", text="BMI Calculator", font=("Helvetica", 15, "bold"), pady=10)
LABLE.place(x=55, y=0)
LABLE1 = Label(TOP, bg="#ffffff", text="Weight(Unit:kg):", bd=6,
font=("Helvetica", 10, "bold"), pady=5)
LABLE1.place(x=55, y=60)
ENTRY1 = Entry(TOP, bd=8, width=10)
ENTRY1.place(x=240, y=60)
LABLE2 = Label(TOP, bg="#ffffff", text="Height(Unit:cm):", bd=6,
font=("Helvetica", 10, "bold"), pady=5)
LABLE2.place(x=55, y=121)
ENTRY2 = Entry(TOP, bd=8, width=10)
ENTRY2.place(x=240, y=121)
BUTTON = Button(bg="#03a9fc", fg='#ffffff', bd=12, text="BMI", padx=33, pady=10, command=calculate_bmi,
font=("Helvetica", 20, "bold"))
BUTTON.grid(row=5, column=0, sticky=W)
BUTTON.place(x=115, y=250)
TOP.mainloop()
Çıktı:
3. Kivy
Kivy, hızlı bir şekilde mobil uygulamalar oluşturabilme avantajına sahip bir başka açık kaynaklı Python kütüphanesidir.
Kivy, diğer platformların yanı sıra Windows, Mac OS, Linux, Android, iOS ve Raspberry Pi için kullanılabilir.
MIT lisansı altında kullanımı da ücretsizdir.
Kurulum:
pip3 install kivy
Kod parçacıkları:
from kivy.app import App
from kivy.uix.button import Button
class TestApp(App):
def build(self):
return Button(text=" Hello World ")
TestApp().run()
Çıktı:
4. wxPython
wxPython, karmaşık ve sağlam grafik kullanıcı arabirimleri oluşturmayı kolaylaştıran, platformlar arası bir Python GUI çerçevesidir. C++ ile yazılmıştır.
Windows, Mac OS X, macOS ve Linux desteklenmektedir.
Tüm sistemlerde wxPython tabanlı uygulamalar (GUI’ler) o işletim sisteminin yerel bir görünümü hissine sahiptir.
Kurulum:
pip3 install wxPython
Kod parçacıkları:
import wx
myapp = wx.App()
init_frame = wx.Frame(parent=None, title='WxPython Window')
init_frame.Show()
myapp.MainLoop()
Çıktı:
Yorum yazabilmek için oturum açmalısınız.