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

Резултати

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

Пребарај: #demografía

当前筛选 #demografía清除筛选
Communia

@communia · Post #37466 · 01.11.2023 г., 09:31

#España . El progresivo envejecimiento de la población trabajadora se va notando en el mercado laboral. El porcentaje de trabajadores menores de 30 años pasa del 22% en 2008 al 14% en 2022. #Demografía#Juventud https://elpais.com/economia/2023-10-31/el-numero-de-trabajadores-mayores-de-55-anos-se-dispara-un-78-en-los-ultimos-14-anos.html

Communia

@communia · Post #36986 · 02.09.2023 г., 12:02

#Vietnam#Cultura El #sexismo de la cultura feudal conservada por el stalinismo, en un contexto de #pobreza y subsistencia aunque con mayor esperanza de vida y precarización de las condiciones de la vejez, produce un desequilibrio en la #demografía entre varones y mujeres. Resultado: más violencia contra las mujeres de clase trabajadora y campesina. «En primer lugar, el desequilibrio es resultado de la preferencia de la sociedad por los chicos. El confucianismo, dominante en Vietnam, defiende roles de género estrictamente separados y la subordinación de la mujer al hombre. Así, al casarse, las mujeres pasan a formar parte de la familia del hombre y, por tanto, se dan por "perdidas" para su propia familia. Además, los padres dependen de sus hijos -o, más bien, de sus hijos varones- para mantenerse en la tercera edad, ya que el sistema de pensiones es incierto.» «Las mujeres son cada vez más víctimas de "matrimonios forzados, tráfico de seres humanos y otras formas de violencia", según el estudio "Distribución de género en Vietnam", de Tran Thi Bich Ngoc y otros autores. Además, aumentan la prostitución y otras formas de explotación sexual. Según la ONU, el excedente relativo de hombres jóvenes en la columna de edad de 20 a 39 años crecerá del 3,5 actual al 10 por ciento en 2059, lo que significa que, estadísticamente, uno de cada diez hombres con edad suficiente para buscar pareja no podrá hallar una mujer» https://www.dw.com/es/vietnam-un-pa%C3%ADs-sin-mujeres/a-66687660