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

Резултати

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

Пребарај: #egipto

当前筛选 #egipto清除筛选
EmbajadaRusaVen

@embajadarusaven · Post #1187 · 05.11.2023 г., 15:49

▶️ Imágenes del avión del Ministerio de Emergencia de #Rusia🇷🇺 en #Egipto con la ayuda humanitaria rusa destinada a los habitantes de la Franja de #Gaza Vídeo: Ministerio de Emergencia de Rusia

Communia

@communia · Post #37967 · 16.02.2024 г., 07:19

#Gaza. ¿Preparan #Israel y #Egipto una limpieza étnica masiva llevando a un millón de gazatíes a campos de refugiados en el Sinaí? https://www.spiegel.de/ausland/israel-gaza-krieg-aegypten-baut-aus-sorge-vor-massenflucht-offenbar-lager-in-der-wueste-a-943f6d54-034a-4954-8193-189116233bc0#ref=rss https://www.euractiv.com/section/global-europe/news/un-aid-chief-warns-of-possible-spillover-of-gazans-into-egypt/

Communia

@communia · Post #37022 · 09.09.2023 г., 09:58

#Sudán. Fuerzas paramilitares capturan dos aviones de #Egipto (que apoyaban al gobierno sudanés) https://www.zona-militar.com/2023/04/16/mig-29-egipcios-son-capturados-junto-a-sus-tripulaciones-por-fuerzas-paramilitares-en-sudan/

El Pueblo Informa

@EPInforma · Post #35490 · 12.06.2025 г., 16:16

Desde la Coordinadora por Palestina, adherimos a la convocatoria 🇨🇱CHILE CAMINA HACIA GAZA🇵🇸 Te invitamos a caminar en solidaridad con quienes, desde #Egipto, marcharán hacia Gaza desafiando el bloqueo, el silencio y la injusticia. Este sábado 14 de junio, a las 16:30 hrs, en la ciudad de Santiago, nos reuniremos en Metro Manuel Montt y caminaremos juntos hacia el Puente de los Candados, dejando nuestra huella de esperanza y compromiso. Miles de personas de todo el mundo cruzarán el desierto rumbo al cruce de #Rafah con el propósito de abrir un corredor humanitario de los pueblos. Una delegación chilena también estará allí, llevando nuestras voces, nuestras almas y nuestra bandera de resistencia. Desde #Chile lxs acompañaremos, haciendo eco de su valentía, porque no podemos mirar hacia otro lado mientras un pueblo entero resiste al borde del colapso. Ven con tu bandera, tu kuffiyeh, tu cartel, tu corazón. #Palestina quiere vivir. #Gaza no está sola. ¡Chile…

Communia

@communia · Post #37314 · 19.10.2023 г., 08:20

#Alemania pide a #Egipto y #Jordania que reciban refugiados de #Gaza. Sisi se niega diciendo que pondría en peligro el proyecto de estado de #Palestina y que #Hamas reaparecería en el Sinaí. «El canciller Olaf Scholz ha presionado a Egipto y Jordania para que apoyen la evacuación de civiles de la Franja de Gaza y proporcionen ayuda en medio de crecientes temores de que el conflicto entre Hamas e Israel continúe escalando.» https://www.euractiv.com/section/politics/news/berlin/

BiA Cerámica Fría

@biaceramicafria · Post #4103 · 27.06.2023 г., 01:31

Sé tan #exótica como un Nenúfar y #florece hasta en la más oscura de las #noches🌃💫 . 📷 Fotógrafa @lilysszulueta_studiolila 🙋🏻‍♀️ Modelo @mei_marketingd 💄 Maquillaje @makeup_byney22 🌼 Accesorios @biaceramicafria . Dicen que el #Nenúfar del Nilo se convirtió en el símbolo de #Egipto vinculado a la idea de la #eternidad. ¿Qué otra curiosidad conoces sobre el Loto? 👀 . Si quieres ver más de esta sesión de fotos, comenta usando un emoji de corazón ❤️💙💛💚😍🙌🥰

12
ПретходнаСтраница 1 од 2Следна