PySide6¶
Qt6 2020 yılının sonunda yayınlandı. Ardından PySide6’da duyuruldu.
Qt sürüm numarası ile uyumlu olması için sürüm numarası 2’den 6’ya atladı.
Kurulum¶
Kullandığım debian 10 sistem üzerinde virtualenv kullanarak pyside6 kurulumu yapacağız. Diğer linux sürümlerinde de benzer şekilde kurulabilir.
ilker@prodesk:~$ mkdir test_pyside6; cd test_pyside6
ilker@prodesk:~/test_pyside6$ python3 -m virtualenv -p /usr/bin/python3 venv
ilker@prodesk:~/test_pyside6$ source venv/bin/activate
(venv) ilker@prodesk:~/test_pyside6$
Buraya kadar virtualenv ile test_pyside6/venv dizininde python3 kullanan bir sanal python ortamı kurduk. Yukarıdaki son satıra dikkat ederseniz, (venv) yazısını göreceksiniz. Burada çalıştıracağınız pip komutları, sizden yetkili kullanıcı istemeyecek ve istediğiniz paketleri venv dizini altına kuracaktır.
Şimdi pyside6 kuralım:
(venv) ilker@prodesk:~/test_pyside6$ pip install pyside6
Collecting pyside6
Using cached PySide6-6.0.0-6.0.0-cp36.cp37.cp38.cp39-abi3-manylinux1_x86_64.whl (170.5 MB)
Collecting shiboken6==6.0.0
Using cached shiboken6-6.0.0-6.0.0-cp36.cp37.cp38.cp39-abi3-manylinux1_x86_64.whl (964 kB)
Installing collected packages: shiboken6, pyside6
Successfully installed pyside6-6.0.0 shiboken6-6.0.0
Artık PySide6 ile uygulama yazmaya başlayabiliriz. Aşağıdaki örnek doc.qt.io sitesinden alınmıştır:
import sys
from PySide6.QtWidgets import (QLineEdit, QPushButton, QApplication, QVBoxLayout, QDialog)
class Form(QDialog):
def __init__(self, parent=None):
super(Form, self).__init__(parent)
# Create widgets
self.edit = QLineEdit("Write my name here")
self.button = QPushButton("Show Greetings")
# Create layout and add widgets
layout = QVBoxLayout()
layout.addWidget(self.edit)
layout.addWidget(self.button)
# Set dialog layout
self.setLayout(layout)
# Add button signal to greetings slot
self.button.clicked.connect(self.greetings)
# Greets the user
def greetings(self):
print ("Hello %s" % self.edit.text())
if __name__ == '__main__':
# Create the Qt Application
app = QApplication(sys.argv)
# Create and show the form
form = Form()
form.show()
# Run the main Qt loop
sys.exit(app.exec_())
Designer Kullanımı¶
Sisteminize Qt6 kurulumu yaparsanız, qt6 ile kullanılabilecek designer uygulamasını da kullanabilirsiniz. pyside2-uic yerine pyside6-uic, pyside2-rcc yerine de pyside6-rcc kullanabilirsiniz.