В прошлом посте говоря "Все вызовы теперь одинаковы" я несколько слукавил. Всё-таки есть в этом зоопарке версий некоторая несовместимость вызов которой просто так не унифицировать. Эти моменты вынесены в отдельный модуль QtCompat (compatibility). Там не так много функций но они довольно полезны.
Этот модуль содержит унификаци модуля shiboken2, функций loadUi, translate и несколько переименованных функций классов или изменённую сигнатуру аргументов и возвращаемых значений. Это единственное исключение из правила когда вам потребуется где-то изменить свой код кроме импортов и этот код не похож на обычный код PySide2.
Например, в PyQt4 и PySide есть метод
QHeaderView.setResizeMode
Для PyQt5 и PySide2 они были благополучно переименованы в
QHeaderView.setSectionResizeMode
Чтобы применить этот метод следует использовать такой код
from Qt import QtCompath
header = self.horizontalHeader()
QtCompat.QHeaderView.setSectionResizeMode(header, QtWidgets.QHeaderView.Fixed)
Унификация загрузки UI файлов:
# PySide2
from PySide2.QtUiTools import QUiLoader
loader = QUiLoader()
widget = loader.load(ui_file)
# PyQt5
from PyQt5 import uic
widget = uic.loadUi(ui_file)
# Qt.py
from Qt import QtCompat
widget = QtCompat.loadUi(ui_file)
Хорошо что таких моментов не много и их легко запомнить.
Полный список можно посмотреть в таблице.
#qt#tricks
Пилоты подрались в кабине во время рейса. Один даже швырнул в напарника портфелем
Два пилота A320 авиакомпании Air France подрались в кабине вскоре после вылета из Женевы в Париж ✈️
Как пишет газета La Tribune, ссора возникла из-за того, второй пилот отказался выполнить команду КВС, тот дал ему пощёчину, второй пилот швырнул в командира портфелем, далее завязалась потасовка; разнимать пилотов пришлось бортпроводникам, которые услышали шум.
Правда, тут французские журналисты, очевидно, подвирают, поскольку бортпроводник не может самостоятельно открыть дверь в кабину пилотов – её могут открыть только сами пилоты, поэтому очевидно, что они к тому времени уже прекратили драться. Однако после этого один из бортпроводников остался в кабине в кресле инструктора, чтобы конфликт не разгорелся вновь.
Авиакомпания заявила, что инцидент не повлиял на безопасность полёта, однако оба пилота были отстранены от полётов и находятся под следствием.
Лёгкое небо
#aviation#news#ГА#AirFrance
🇶🇦Европейские авиакомпании требуют аннулировать авиасоглашение с Катаром
📌Lufthansa, Air France, KLM и SAS обратились к главе Еврокомиссии с требованием аннулировать авиасоглашение ЕС с Катаром, подписанное в октябре 2021 года
🔵Поводом стало увольнение высокопоставленного чиновника ЕС, обвинённого в коррупции – в том числе в получении бесплатных перелётов Qatar Airways для себя и семьи
🔵По мнению европейских перевозчиков, соглашение предоставляет катарским авиакомпаниям неограниченный доступ к рынку ЕС и создаёт недобросовестную конкуренцию. Заявители настаивают, что документ не может действовать, пока остаются подозрения в коррупции при его заключении
🔵Власти Катара опровергли обвинения, заявив о полном соответствии законам. Qatar Airways ситуацию пока не прокомментировала
🤩Лёгкое небо
#aviation#news#Qatar#Lufthansa#AirFrance
#Updates: #Lufthansa, #TurkishAirlines, #AirFrance cancel Saturday flights to and from Tel Aviv, Middle East capitals
The German airline group Lufthansa said in a statement that it and its subsidiaries were suspending flights to and from #Dubai and #Abu_Dhabi until Sunday, citing the “current situation in the Middle East.”
Air France also cancelled its Saturday flights to and from #Tel_Aviv and #Beirut after the United States and Israel launched strikes on Iran, adding that it would provide further updates on its schedule in the coming days.
“Due to the security situation at the destination, the airline has decided to cancel its flights scheduled for February 28 to/from Tel Aviv and to/from Beirut,” Air France told AFP. “Air France will communicate later on its flight schedule to these destinations for the coming days,” it added.
#Iran, #Iraq, and #Israel have closed their airspace....
https://web.facebook.com/AddisstandardEng/posts/pfbid0EDj1My2WPSW3gr88dM7ioLeeMBhKoSBY7D9anWKrrFGsHXAxBFLG5w1seq733Qk1l