TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #381 · 23 окт.

Установить свойства виджета в PySide можно не только через соответствующие методы и конструктор класса. Можно их изменять с помощью метода setProperty по имени. btn = QPushButton("Click Me") btn.setProperty("flat", True) Это аналогично вызову btn.setFlat(True) Если указать несуществующее свойство, то оно просто создается btn.setProperty("btnType", "super") Получить его значение можно методом .property(name) btn_type = btn.property("btnType") Когда это может быть полезно? ▫️Можно просто хранить какие то данные в виджете и потом их доставать обратно widget = QWidget() widget.setProperty('my_data', 123) print(widget.property('my_data')) ▫️ Назначая эти свойства разным виджетам можно потом отличить виджеты во время итераци по ним. Например, найти все кнопки со свойством my_data="superbtn". Но ведь вместо кастомного свойства можно использовать objectName, будет тот же результат. Да, но y ObjectName есть ограничение - только строки. ▫️ Если нам потребуется не просто поиск а, например, сортировка по числу, то свойства позволяют нам это сделать. Поддерживается любой тип данных widget.setProperty('my_data', {'Key': 'value'}) widget.setProperty('order', 1) all_widgets.sort(key=w: w.property('order')) Но ведь Python позволяет всё вышеперечисленное сделать простым созданием атрибута у объекта widget.order = 1 widget.my_data = 123 Да, но я думаю что не надо объяснять почему не стоит так делать. К тому же, если у виджета нет свойства то метод .property(name) вернет None, а отсутствующий атрибут выбросит исключение. ▫️ Действительно полезное применение кастомным свойствам - контроль стилей. Здесь атрибутами не обойтись, нужны именно свойства. Дело в том, что в селекторах стилей можно указывать конкретные свойства виджетов на которые следует назначать стиль. Просто запустите этот код from PySide2.QtWidgets import * if __name__ == "__main__": app = QApplication([]) widget = QWidget(minimumWidth=300) layout = QVBoxLayout(widget) btn1 = QPushButton("Action 1") btn2 = QPushButton("Action 2") btn3 = QPushButton("Action 3", flat=True) layout.addWidget(btn1) layout.addWidget(btn2) layout.addWidget(btn3) # добавим кастомное свойство одной кнопке btn1.setProperty("btnType", "super") # добавляем стили widget.setStyleSheet( """ QPushButton[btnType="super"] { background-color: yellow; color: red; } QPushButton[flat="true"] { color: yellow; } """ ) widget.show() app.exec_() С помощью селектора мы избирательно назначили стили на конкретные кнопки. Как получить список всех кастомный свойств? Функция получения списка кастомных свойств отличается от получения дефолтных. def print_widget_dyn_properties(widget): for prop_name in widget.dynamicPropertyNames(): property_name = prop_name.data().decode() property_value = widget.property(property_name) print(f"{property_name}: {property_value}") #tricks#qt

Hashtags

Резултати

Пронајдени 1 слични објави

Пребарај: #droitsdespopulations

当前筛选 #droitsdespopulations清除筛选
Egountchi Behanzin Officiel

@egountchibehanzinofficiel · Post #7913 · 24.12.2024 г., 22:29

📢 Mobilisation des Burkinabés contre le terrorisme sanitaire et biologique du projet Target Malaria, moustique OGM 🇧🇫 Voici des centaines de réactions de la part des Burkinabés concernant le projet Target Malaria, qui implique des moustiques OGM génétiquement modifiés financés par Bill Gates et l’armée américaine. Les populations s’interrogent et expriment leurs inquiétudes sans obtenir de réponses satisfaisantes. Nos alertes, sensibilisations et dénonciations portent leurs fruits, c'est pourquoi nous sommes attaqués à travers des articles fallacieux qui cherchent à nous diaboliser dans des médias occidentaux, financés par les promoteurs de ce projet funeste. Maintenant, nous demandons aux autorités burkinabés, et en particulier au ministre de la Santé, de nous fournir des réponses claires. Est-ce que le forçage génétique présente un danger pour l’environnement et les êtres humains, OUI ou NON ? Les populations du Burkina Faso ont-elles consenti à servir de cobayes pour le bioterrorisme orchestré par Big Pharma et le gouvernement américain ? Nous savons également que le ministre de la Santé est lié au projet de GAVI. Mais cela est un sujet que nous aborderons plus tard... ‼️Note: Merci pour vos nombreux messages de soutien. Cela me fait très, très plaisir. La résistance continue, car il est inacceptable que nos pays et nos populations servent de cobayes pour les armes biologiques et les bactéries des occidentaux. REJOIGNEZ LA RÉSISTANCE SUR lTELEGRAM. 🔺Pour les numéros français : https://t.me/egountchibehanzinTV 🔻Pour les numéros internationaux : https://t.me/EgountchiBehanzinOfficiel @egountchibehanzinTV #BurkinaFaso#TargetMalaria#MoustiquesOGM#SouverainetéSanitaire#DroitsDesPopulations