В прошлом посте говоря "Все вызовы теперь одинаковы" я несколько слукавил. Всё-таки есть в этом зоопарке версий некоторая несовместимость вызов которой просто так не унифицировать. Эти моменты вынесены в отдельный модуль 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
Усики — пропуск в трусики 🔞
Одиниз первых постов на нашем канале (2022 года), но он хорошо вписывается в тему «Сексуальная жизнь насекомых»
В статье китайских учёных «Precopulatory oral sex contact plays an important role in copulatory success in a cryptic desert beetle» речь идёт о монгольской чернотелке Platyope mongolica Faldermann, 1835 #Coleoptera#Tenebrionidae.
В 2021 был описан интересный случай полового поведения. Полевые и лабораторные исследования показали, что полный цикл спаривания включал четыре этапа: преследование, оральный сексуальный контакт, подготовка к спариванию (самец взбирается на самку), и само спаривание. Оральные ласки самцы проводили верхнечелюстными щупиками. Если оральные ласки не удовлетворяли самку, она уклонялась от спаривания. Оказалось, что чем меньше времени самец тратит на оральные ласки, тем меньше у него шансов на совокупление. Самцы с удалёнными усиками не различали пол партнера, и тогда наблюдались гомосексуальные контакты.
Beetles of the World🪲
Stenus (Stenus) biguttatus (Linnaeus, 1758) #Coleoptera#Staphilinidae from Vologda Oblast and amazing mouthparts of the genus Stenus beetles.
Адгезивный аппарат Stenus spp. для захвата добычи (a–c). (а, b) S. comma — по: Bauer, Pfeiffer, 1991; (c) S. nitidiusculus. (а) Голова с выступающей нижней губой. Масштабная линейка 1 мм. (b) Вершина прементума с параглоссами, в виде липких подушечек. 100 мкм. (c) Детальный вид липкой подушечки. Обратите внимание на адгезивные трихомы, разветвленные на вершине. 20 мкм. (d) Последовательность захвата добычи у S. comma. После приближение жертвы на критическое расстояние (вверху), аппарат для захвата добычи быстро выдвигается (посередине), приклеенная добыча притягиваются к мандибулам (внизу) — по: Weinreich, 1968. (e) Внешний вид S. guttula. Длина: 4,3 мм. Фото: Udo Schmidt. Сокращения: mct – мембранозная соединительная трубка, pm – прементум.
По: Biology of Rove Beetles (Staphylinidae): Life History, Evolution, Ecology and Distribution, 2018. #экология
Rare Central Asian species Agabus (Gaurodytes) friedrichi (Falkenström, 1936) #Coleoptera#Dytiscidae
Редкий среднеазиатский вид Agabus (Gaurodytes) friedrichi (Falkenström, 1936) #Coleoptera#Dytiscidae#species