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

Резултати

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

Пребарај: #racialismo

当前筛选 #racialismo清除筛选
Communia

@communia · Post #37584 · 16.11.2023 г., 08:27

#EEUU. #Cultura y #racialismo «la mayoría de los votantes estadounidenses apoyan la igualdad racial como objetivo, pero se oponen a objetivos o cuotas que otorgan un trato preferencial a cualquier grupo específico.» «En un correo electrónico, Neil Malhotra , economista político de Stanford (uno de los académicos que, de manera continua, supervisa las encuestas sobre las decisiones de la Corte Suprema para The New York Times) señaló que “la acción afirmativa basada en la raza es extremadamente impopular. El sesenta y nueve por ciento del público estuvo de acuerdo con la decisión del tribunal en Students for Fair Admissions v. Harvard, incluido el 58 por ciento de los demócratas”.» «Una encuesta de Economist/YouGov realizada a principios de julio planteó preguntas que van directamente a la cuestión de la acción afirmativa en la educación superior. "¿Crees que a las universidades se les debería o no permitir considerar la raza de un solicitante, entre otros factores, al tomar decisiones sobre admisiones?" La respuesta: el 25 por ciento dijo que deberían permitir las preferencias raciales; El 64 por ciento dijo que no debería hacerlo. “¿Aprueba o desaprueba la decisión de la Corte Suprema sobre acción afirmativa, que dictaminó que las universidades no pueden considerar la raza de un solicitante al tomar decisiones sobre admisiones?” El cincuenta y nueve por ciento aprobó la decisión, incluido el 46 por ciento que la aprobó firmemente. El veintisiete por ciento lo desaprobó, incluido el 18 por ciento que lo desaprobó firmemente. «“Para sorpresa de muchos observadores”, escribió Galston, citando datos de encuestas, los estadounidenses negros “apoyaron al tribunal entre un 44 y un 36 por ciento”.» https://www.nytimes.com/2023/11/15/opinion/abortion-dobbs-affirmation-action.html