PyQt5 - Có gì mới
API PyQt5 không tự động tương thích với các phiên bản trước đó. Do đó, mã Python liên quan đến các mô-đun PyQt4 nên được nâng cấp theo cách thủ công bằng cách thực hiện các thay đổi có liên quan. Trong chương này, những khác biệt chính giữa PyQt4 và PyQt5 đã được liệt kê.
PyQt5 không được hỗ trợ trên các phiên bản Python trước v2.6.
PyQt5 không hỗ trợ phương thức connect () của lớp QObject để kết nối giữa tín hiệu và khe cắm. Do đó việc sử dụng không thể được triển khai nữa -
QObject.connect(widget, QtCore.SIGNAL(‘signalname’), slot_function)
Chỉ cú pháp sau được xác định:
widget.signal.connect(slot_function)
Các lớp được xác định trong mô-đun QtGui trước đó đã được phân phối trong QtGui, QtPrintSupport một QtWidgets các mô-đun.
Trong lớp QFileDialog mới, getOpenFileNameAndFilter() phương pháp được thay thế bởi getOpenFileName(), getOpenFileNamesAndFilter() bởi getOpenFileNames() và getSaveFileNameAndFilter() bởi getSaveFileName(). Chữ ký cũ hơn của các phương pháp này cũng đã thay đổi.
PyQt5 không có quy định để xác định một lớp được phân loại từ nhiều hơn một lớp Qt.
pyuic5 tiện ích (để tạo mã Python từ tệp XML của Nhà thiết kế) không hỗ trợ cờ --pyqt3-wrapper.
pyrcc5không hỗ trợ cờ -py2 và -py3. Đầu ra của pyrcc5 tương thích với tất cả các phiên bản Python v2.6 trở đi.
PyQt5 luôn gọi sip.setdestroyonexit() tự động và gọi hàm hủy C ++ của tất cả các phiên bản được bọc mà nó sở hữu.