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

Резултати

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

Пребарај: #dr

当前筛选 #dr清除筛选
STAR VET BOOKS

@starvetbooks · Post #4951 · 11.02.2025 г., 08:20

♻️FEEDING GUIDE ON BROILER CHICKS ✅Starter Feed (0-3 weeks): The starter feed is designed to provide the energy and protein necessary for rapid growth during the first few weeks of a broiler's life. It's typically higher in protein content to support muscle and feather development. ✅Here's a typical formulation for starter feed: Maize (Corn): 50-60% — Provides energy. Soybean Meal: 25-30% — Rich in protein for growth. Fish Meal/Meat Meal: 5-10% — Additional protein to boost growth. Wheat Bran: 5% — Source of fiber and micronutrients. Limestone: 1-2% — Ensures proper bone development. Dicalcium Phosphate: 1-2% — Provides phosphorus and calcium for bone health. Salt: 0.2-0.3% - Maintains electrolyte balance. Vitamin and Mineral Premixes: As per manufacturer's guidelines for the required nutrients. Probiotics and Enzymes: 0.5-1% — Improves digestion and nutrient absorption. ✅Grower Feed (3-6 weeks): The grower feed formulation is slightly lower in protein than the starter feed but still maintains enough protein to support continued growth and muscle development. ♻️Typical grower feed formulation: Maize (Corn): 55-65% — Provides energy for continued growth. Soybean Meal: 20-25% — Protein for muscle development. Sunflower Meal: 5-10% — Additional protein source and enhances digestibility. Rice Bran: 5-10% — Provides energy and fats for increased growth rate. Wheat Bran: 2-5% — Fiber for digestion. Limestone: 1-1.5% — Calcium for bone health. Dicalcium Phosphate: 1-1.5% - Balanced phosphorus and calcium. Salt: 0.2-0.3% — Electrolyte balance. Vitamin and Mineral Premixes: According to manufacturer guidelines. Probiotics and Enzymes: 0.5-1% — Support gut health and nutrient absorption. ♻️Finisher Feed (6 weeks until market): The finisher feed focuses on providing the final boost in weight gain and ensures that broilers reach market weight efficiently. It contains less protein than the grower feed, as the chickens are now focusing more on fat deposition #Dr.Amanuel https://t.me/starvetbooks

Hashtags

海外素材人设包装套图

@sucai999 · Post #32862 · 08.03.2026 г., 17:30

#dr钻戒#钻戒#DR 幸福昏了,DR的钻戒也是戴在我手上了,打开我尊嘟好心动啊,敲大一颗钻blingbling的,但是上手不会泰突兀,衬得我的手手又白又贵气啊啊啊,寓意也好好,一生送一人。

【环球】海外素材库🫥

@sucaiokk · Post #18633 · 22.03.2026 г., 14:53

#dr钻戒#钻戒#DR 幸福昏了,DR的钻戒也是戴在我手上了,打开我尊嘟好心动啊,敲大一颗钻blingbling的,但是上手不会泰突兀,衬得我的手手又白又贵气啊啊啊,寓意也好好,一生送一人。

VIP_影视分享

@wangzhuanzhan · Post #32522 · 07.09.2024 г., 07:26

G-g怪g医y杜d立l德d- 怪医杜立德 Doctor Dolittle (1998) 直达链接:https://pan.quark.cn/s/a2b7e0eb38fa #怪医杜立德#Doctor Dolittle #Dr. Dolittle #D老笃日记#摇钱树#杜立德医生 链接:https://link3.cc/sf_com #电影#喜剧#美国#90年代

Libertà è ragione

@libertaeragione · Post #4014 · 17.10.2023 г., 09:46

#Elezioni#Polonia Composizione del prossimo #Sejm (Camera bassa): #ZP (#PiS-#SP-#Republikanie-#ONRP-#Kukiz)|ECR: 194 seggi (-37) #KO (#PO-#N-#iPL-#Zieloni-#AGROunia-#DR)|EPP|RE|G/EFA: 167 (+38) #TD (#Polska2050-#PSL)|RE|EPP: 65 (+23) #Lewica (#NL-#Razem-#PPS-#UP)|S&D: 26 (-8) #Konfederacja (#RN-#NN-#KKP)|Estrema destra|Destra libertaria|Monarchici: 18 (+7) #MN|Minoranza tedesca: 0 (-1) Totale seggi: 460 Maggioranza: 231 Maggioranza attuale (ZP): 194 seggi (❌Maggioranza persa❌) @OsservatorioEsteri

Libertà è ragione

@libertaeragione · Post #4013 · 17.10.2023 г., 09:38

#Elezioni#Polonia Composizione del prossimo #Sejm (Camera bassa): #ZP (#PiS-#SP-#Republikanie-#ONRP-#Kukiz)|ECR: 194 seggi (-37) #KO (#PO-#N-#iPL-#Zieloni-#AGROunia-#DR)|EPP|RE|G/EFA: 167 (+38) #TD (#Polska2050-#PSL)|RE|EPP: 65 (+23) #Lewica (#NL-#Razem-#PPS-#UP)|S&D: 26 (-8) #Konfederacja (#RN-#NN-#KKP)|Estrema destra|Destra libertaria|Monarchici: 18 (+7) #MN|Minoranza tedesca: 0 (-1) Totale seggi: 460 Maggioranza: 231 Maggioranza attuale (ZP): 194 seggi (❌Maggioranza persa❌) @OsservatorioEsteri