@cryptoprofitcoach · Post #8020 · 30.07.2022 г., 12:02
#BRD still at low level grab this Gem before whales make hardcore profit
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
Пребарај: #brd
@cryptoprofitcoach · Post #8020 · 30.07.2022 г., 12:02
#BRD still at low level grab this Gem before whales make hardcore profit
Hashtags
@cryptoprofitcoach · Post #8019 · 30.07.2022 г., 11:42
#BRD will pump like NEBL coin #BRD is no. 1 pump coin on Binance
Hashtags
@cryptoprofitcoach · Post #8018 · 30.07.2022 г., 11:40
Grab this bullshit #BRD before it pump hard and Whales take away all profit
Hashtags
@cryptoprofitcoach · Post #8017 · 30.07.2022 г., 11:39
#BRD👈 https://www.binance.com/en/trade/BRD_BTC BuyZone 300 - 330 Sell Target 🤑 360-400 🤑 400 - 430 💃 430 - 460 🚀 460- 500 & above SL 280
Hashtags
@binancebigpumpsignalsfuture · Post #2011 · 05.02.2022 г., 18:01
#BRD result 3 nd target achieved in just 12 days ✅✅✅ One more huge quick profit 36.2%🤑💰🤑 👉 Still thinking? The more you wait more you lose profit ☎️ Contact @MichaelStrategiesVip for membership and grab next breakout signal
Hashtags
@binancebigpumpsignalsfuture · Post #2010 · 05.02.2022 г., 18:00
#BRD (Binance) Buy zone 701-716 Sell zone 749-789-965-1256-1567
Hashtags
@tod_und_ruinen · Post #608 · 21.12.2024 г., 19:21
Завтра немцам расскажут, что: - у терроризма нет национальности. - убийца был просто сумасшедшим. - религия тут не при чём. - не голосуйте за правые партии, они просто используют это единичный случай. Обязательно нужно будет собрать огромную демонстрацию ПРОТИВ ПРАВЫХ! Чтобы, не дай Бог, никто не додумался голосовать за националистов на фоне этого небольшого недоразумения! Я думаю, что если подобное снова не отрезвит немцев, нацию можно официально считать потерянной, а остаткам германцев, если, конечно, они всё-таки хотят выжить, перебираться в Польшу или Украину. #BRD#ФРГ
@StaatsSimulation_BRD · Post #4088 · 17.12.2025 г., 10:35
WICHTIG ⚠️⚠️⚠️ Das dürfte wohl viele Bürger der ehemaligen DDR interessieren Bemerkenswert, was Außenminister Sergei #Lawrow gestern in einem Interview mit dem iranischen Fernsehen sagte: Die #Sowjetunion beging einen Verrat, als sie die DDR der Eingliederung in die Bundesrepublik #Deutschland überließ. Die Behörden der #BRD übernahmen als Eroberer die Kontrolle über alle Gebiete der ehemaligen #DDR; es war eine Übernahme, keine Fusion, sagte der Minister. Ich hatte als Jurist einen ähnlichen Eindruck; manche Gesetze der DDR waren durchaus gut und durchdacht. Sie wurden gleichwohl ersatzlos gestrichen, obwohl es in der BRD kein Äquivalent dazu gab. Einfach wegradiert, weil es aus der DDR kam ... Ein weiteres Beispiel: Schlachthöfe in Mecklenburg-Vorpommern wurden umgehend von der Treuhand liquidiert, weil nach einem Gutachten westdeutscher "Experten" anderenfalls ein Überangebot an Fleisch auf den Markt gekommen wäre ... #dr_c_becker