@MLB_Daily · Post #16053 · 01.11.2025 г., 22:23
📋 𝗢𝗙𝗜𝗖𝗜𝗔𝗟 ✅ 🛰🏆🐦 Alineaciones de los Dodgers y los Blue Jays para el juego 7 de la Serie Mundial. 💭 ¿Quién se lleva la Serie Mundial? #️⃣#PlayOffs25#DodgersBlueJays 🗞 | t.me/MLB_Daily
Hashtags
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
Пребарај: #dodgersbluejays
@MLB_Daily · Post #16053 · 01.11.2025 г., 22:23
📋 𝗢𝗙𝗜𝗖𝗜𝗔𝗟 ✅ 🛰🏆🐦 Alineaciones de los Dodgers y los Blue Jays para el juego 7 de la Serie Mundial. 💭 ¿Quién se lleva la Serie Mundial? #️⃣#PlayOffs25#DodgersBlueJays 🗞 | t.me/MLB_Daily
Hashtags
@MLB_Daily · Post #16049 · 31.10.2025 г., 21:13
📋 𝗢𝗙𝗜𝗖𝗜𝗔𝗟 ✅ 🛰🏆🐦 Alineaciones de los Dodgers y los Blue Jays para el juego 6 de la Serie Mundial. 💭 ¿Tenemos un nuevo campeón o hay juego 7? #️⃣#PlayOffs25#DodgersBlueJays 🗞 | t.me/MLB_Daily
Hashtags
@MLB_Daily · Post #16005 · 25.10.2025 г., 23:23
📋 𝗢𝗙𝗜𝗖𝗜𝗔𝗟 ✅ 🛰🏆🐦 Alineaciones de los Dodgers y los Blue Jays para el juego 2 de la Serie Mundial. 💭 ¿Quién se llevará el juego de hoy? #️⃣#PlayOffs25#DodgersBlueJays 🗞 | t.me/MLB_Daily
Hashtags
@MLB_Daily · Post #16001 · 24.10.2025 г., 23:13
📋 𝗢𝗙𝗜𝗖𝗜𝗔𝗟 ✅ 🛰🏆🐦 Alineaciones de los Dodgers y los Blue Jays para el juego 1 de la Serie Mundial. 💭 ¿Quién se llevará el primer juego de la Serie Mundial? #️⃣#PlayOffs25#DodgersBlueJays 🗞 | t.me/MLB_Daily
Hashtags
@MLB_Daily · Post #16056 · 02.11.2025 г., 04:25
🚨 𝐅𝐈𝐍𝐀𝐋 (11 innings) 🏟 Rogers Centre, Toronto 🏆 Serie Mundial, Juego 7 🗓 1/11/ 🛰 Dodgers 5️⃣🔤4️⃣ Blue Jays 🐦 ✅ V: Yoshinobu Yamamoto (5-1) ❌ D: Shane Bieber (2-1) 🛡 SV: - 💥 HR: Bo Bichette (1ro)🐦, Max Muncy (3ro) 🔵, Miguel Rojas (1ro)🛰, Will Smith (2do) 🔵 ⭐️🔵 MVP: Yoshinobu Yamamoto (2.2 INN, 0 CL, 1 H, 1 K, lanzó sin días de descanso) 🤯 #️⃣#PlayOffs25#DodgersBlueJays#Yamamoto 🗞 | t.me/MLB_Daily
@MLB_Daily · Post #16006 · 26.10.2025 г., 12:12
🚨 𝐅𝐈𝐍𝐀𝐋 🏟 Rogers Centre, Toronto 🏆 Serie Mundial, Juego 2 🗓 25/10/ 🛰 Dodgers 5️⃣🔤1️⃣ Blue Jays 🐦 ✅ V: Yoshinobu Yamamoto (3-1) ❌ D: Kevin Gausman (2-2) 🛡 SV: - 💥 HR: Will Smith (1ro) 🔵, Max Muncy (2do) 🔵 ⭐️🔵 MVP: Yoshinobu Yamamoto (9.0 INN, 1 CL, 8K) #️⃣#PlayOffs25#DodgersBlueJays#Yamamoto 🗞 | t.me/MLB_Daily
@MLB_Daily · Post #16050 · 01.11.2025 г., 12:18
🚨 𝐅𝐈𝐍𝐀𝐋, HAY JUEGO 7 🔥 🏟 Rogers Centre, Toronto 🏆 Serie Mundial, Juego 6 🗓 31/10/ 🛰 Dodgers 3️⃣🔤1️⃣ Blue Jays 🐦 ✅ V: Yoshinobu Yamamoto (4-1) ❌ D: Kevin Gausman (2-3) 🛡 SV: Tyler Glasnow (1ro) 💥 HR: - ⭐️🔵 MVP: Will Smith (1-3, 2B, 1 RBI) #️⃣#PlayOffs25#DodgersBlueJays#WSmith 🗞 | t.me/MLB_Daily
@MLB_Daily · Post #16002 · 25.10.2025 г., 11:50
🚨 𝐅𝐈𝐍𝐀𝐋 🏟 Rogers Centre, Toronto 🏆 Serie Mundial, Juego 1 🗓 24/10/ 🛰 Dodgers 4️⃣🔤1️⃣1️⃣ Blue Jays 🐦 ✅ V: Seranthony Domínguez (2-0) ❌ D: Blake Snell (3-1) 🛡 SV: - 💥 HR: Daulton Varsho (3ro) 🐦, Addison Barger (3ro) 🐦, Alejandro Kirk (4to) 🐦, Shohei Ohtani (6to) 🔵 ⭐️🐦 MVP: Addison Barger (Grand Slam de emergente) #️⃣#PlayOffs25#DodgersBlueJays#Barger 🗞 | t.me/MLB_Daily