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

Резултати

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

Пребарај: #oled

当前筛选 #oled清除筛选
RedFox Branding

@redfoxuz · Post #1905 · 22.02.2025 г., 07:19

#inqilobiy_ozgarish / #kinoindustriya / #OLED Dunyo o‘zgarayotgani singari kinoteatrlar ham katta transformatsiyani boshdan kechirmoqda. An’anaviy DLP, LCD va Laser proyektorlar o‘z o‘rnini OLED va MicroLED texnologiyalariga bo‘shatmoqda. Bu faqat yangi texnologiya emas, balki butun sanoatning inqilobi! 🔥 Jajji maqolachani o'qish: https://www.rahimazim.uz/kinoteatrlarda-inqilob-oled-erasi-boshlanmoqda-2/

ASUS CIS

@asus_on_russian · Post #2995 · 29.01.2025 г., 08:15

👆 ASUS Zenbook DUO: два сенсорных OLED-экрана 📱📱 для интуитивного управления и комфортной работы 💻. Не просто ноутбук, а целая платформа для творчества! 🎨 Интересно узнать больше? Оставь комментарий! 💬 #ASUS#ZenbookDUO#ноутбук#OLED

🚀 Знакомьтесь, Kuycon Q32S: 240 Гц и QD-OLED в премиальном алюминии Друзья, у нас отличные новости! Новая поставка пришла, и мы наконец готовы подробно рассказать о наших новинках! Будем делать это постепенно, чтобы не перегружать Вас лишней информацией. Начнём с нашего главного гостя: Kuycon Q32-S QD-OLED. Вот что скрывается за лаконичным дизайном из премиального алюминия: 🟢 Дисплей нового поколения Внутри — 31.5-дюймовая QD-OLED матрица 3-го поколения. Это не просто «OLED», это квантовые точки, которые дают бешеную цветопередачу без выгорания цвета. 4K (3840x2160), 10-бит, 1,07 млрд цветов. 240 Гц — игровой киберспортивный уровень. 0.03 мс — никаких шлейфов. HDR400 True Black — чёрный здесь действительно бесконечный. 🔌 Порты будущего Мы заглянули вперёд. В Q32S стоит DisplayPort 2.1 (80 Гбит/с) и USB-C (80 Гбит/с). Для владельцев новых RTX 5090: вы получите 4K 240 Гц без сжатия (DSC не нужен). Для фанатов Apple: подключаете MacBook одним кабелем USB-C, получаете 4K 240 Гц + зарядка 100 Вт. 🛡 Надёжность QD-OLED боится выгорания? Мы предусмотрели это. Пассивное охлаждение через алюминиевый корпус (никаких вентиляторов). Встроенная функция OLED Care (сдвиг пикселей, защита экрана). VESA-крепление 100х100мм. в комплекте (подставка, как и у большинства других наших мониторов, опциональна — вы выбираете сами). Кому он нужен? Хардкорным геймерам, которые хотят видеть каждую тень в Cyberpunk 2077. Владельцам Mac, которые устали от 60 Гц и хотят идеальную плавность в интерфейсе и монтаже. Киноманам, для которых HDR — не просто галочка. Характеристики прикрепили в первом комментарии (чтобы не перегружать пост). Спрашивайте, если нужна помощь с выбором между G32P и Q32S — поможем! Приобрести монитор можно на нашем сайте, а также на маркетплейсах Ozon и Яндекс.Маркет #Kuycon#Q32S#Новинка#OLED#240Hz#ИгровойМонитор

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