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 слични објави

Пребарај: #q2

当前筛选 #q2清除筛选
KNAUF Uzbekistan

@knaufuzbekistan · Post #602 · 18.09.2023 г., 05:00

​​👷‍♂️Qanday qilib ustalar bilan bir xil tilda gaplashish mumkin? Qanday qilib keraksiz joylarda devorlarni oynadek tekislash boʻyicha ortiqcha ishlar bilan ovora boʻlmaslik va vaqt va pulni tejab qolish mumkin? Ikkala tomon - Buyurtmachi ham, Ijrochi ham, "gulqog'ozning orqasi" yoki "kafelning orqasi" ta'rifini bir xil tushunishiga qanday amin bo'lishimiz mumkin? ☝️Bu yerda yuzalarni qoplash sifatini eng past Q1dan yuqori daraja, premium sinf Q4 ga qadar tasniflaydigan maxsus ishlab chiqilgan KNAUF Q1-Q4 tizimi ("Q" - nemis tilidagi "Qualität"dan olingan, sifat) yordam beradi. U ham quruq qurilish ishlari, ham suvoqga asoslangan tizimlar uchun mos keladi. 🧐Shuni esda tutish kerakki, Q2 sifat darajasi keyingi Q3 va Q4 darajalari uchun asos hisoblanadi. Ya'ni, to'satdan rejalaringiz o'zgarib qolsa va siz xonani pardozlash uchun dekorativ suvoq (Q2) o'rniga, masalan, Venetsiya suvogʻi (Q4) bilan ishlov berishga qaror qilib qolishingiz hozir qanday tayyorgarlik koʻrishingizga bog'liq. Q2 qanday koʻrinishga ega? Ushbu yuza sifati asboblardan qolgan izlar va shpaklyovka eritmasidan yuzaga kelgan notekisliklarni, shuningdek 1 mm gacha oʻyiq va qirilgan joylarni koʻrinishiga imkon beradi. 1 m uchun 1 mm gacha bo'lgan vertikal ogʻishlar (lekin xonaning butun balandligi uchun 5 mm dan koʻp emas), shuningdek soyalar yon nurlardan tushadi. Agar Siz yakunlovchi qoplama sifatida suyuq gulqog'ozi, teksturali bo'yoq yoki dekorativ suvoqni tanlasangiz, Q2 yuza sifati eng tejamli va eng tezkor yechimdir.👌 - - - - - 👷‍♂️Как разговаривать с мастерами на одном языке? Как не заморачиваться лишней работой по зеркальному выравниванию стен там, где это не обязательно, и экономить время и деньги? Как быть уверенным, что определение “под обои” или “под кафель” обе стороны, Заказчик и Исполнитель, понимают одинаково? ☝️Здесь поможет специально разработанная КНАУФ система Q1-Q4 («Q» — от немецкого Qualität, качество), которая классифицирует качество отделки поверхности от низшего Q1 до высшего, премиум класса, Q4. Она подходит как для сухого строительства, так и для систем на базе штукатурок. 🧐Следует помнить, что уровень качества Q2 является базовым для дальнейших уровней Q3 и Q4. То есть, как вы подготовитесь сейчас, будет зависеть, насколько качественно вы сможете обработать поверхность, если вдруг планы поменялись и вы решили вместо декоративной штукатурки (Q2) отделать комнату, например, венецианской штукатуркой (Q4). Как выглядит Q2? Данное качество поверхности допускает видимые отпечатки от инструментов и наплывы шпаклевочного раствора, а так же задиры и царапины до 1 мм. Отклонения по вертикали до 1 мм на 1 м (но не более 5 мм на всю высоту помещения), а так же тени от бокового света. Если вы выбираете в качестве финишных покрытий жидкие обои, текстурную краску или декоративную штукатурку, качество поверхности Q2 является самым экономичным и быстрым решением.👌 Сайт|Facebook|Instagram #knaufuzbekistan#q2

KNAUF Uzbekistan

@knaufuzbekistan · Post #249 · 18.05.2021 г., 04:00

​​👷‍♂️Qanday qilib ustalar bilan bir xil tilda gaplashish mumkin? Qanday qilib keraksiz joylarda devorlarni oynadek tekislash boʻyicha ortiqcha ishlar bilan ovora boʻlmaslik va vaqt va pulni tejab qolish mumkin? Ikkala tomon - Buyurtmachi ham, Ijrochi ham, "gulqog'ozning orqasi" yoki "kafelning orqasi" ta'rifini bir xil tushunishiga qanday amin bo'lishimiz mumkin? ☝️Bu yerda yuzalarni qoplash sifatini eng past Q1dan yuqori daraja, premium sinf Q4 ga qadar tasniflaydigan maxsus ishlab chiqilgan KNAUF Q1-Q4 tizimi ("Q" - nemis tilidagi "Qualität"dan olingan, sifat) yordam beradi. U ham quruq qurilish ishlari, ham suvoqga asoslangan tizimlar uchun mos keladi. 🧐Shuni esda tutish kerakki, Q2 sifat darajasi keyingi Q3 va Q4 darajalari uchun asos hisoblanadi. Ya'ni, to'satdan rejalaringiz o'zgarib qolsa va siz xonani pardozlash uchun dekorativ suvoq (Q2) o'rniga, masalan, Venetsiya suvogʻi (Q4) bilan ishlov berishga qaror qilib qolishingiz hozir qanday tayyorgarlik koʻrishingizga bog'liq. Q2 qanday koʻrinishga ega? Ushbu yuza sifati asboblardan qolgan izlar va shpaklyovka eritmasidan yuzaga kelgan notekisliklarni, shuningdek 1 mm gacha oʻyiq va qirilgan joylarni koʻrinishiga imkon beradi. 1 m uchun 1 mm gacha bo'lgan vertikal ogʻishlar (lekin xonaning butun balandligi uchun 5 mm dan koʻp emas), shuningdek soyalar yon nurlardan tushadi. Agar Siz yakunlovchi qoplama sifatida suyuq gulqog'ozi, teksturali bo'yoq yoki dekorativ suvoqni tanlasangiz, Q2 yuza sifati eng tejamli va eng tezkor yechimdir.👌 - - - - - 👷‍♂️Как разговаривать с мастерами на одном языке? Как не заморачиваться лишней работой по зеркальному выравниванию стен там, где это не обязательно, и экономить время и деньги? Как быть уверенным, что определение “под обои” или “под кафель” обе стороны, Заказчик и Исполнитель, понимают одинаково? ☝️Здесь поможет специально разработанная КНАУФ система Q1-Q4 («Q» — от немецкого Qualität, качество), которая классифицирует качество отделки поверхности от низшего Q1 до высшего, премиум класса, Q4. Она подходит как для сухого строительства, так и для систем на базе штукатурок. 🧐Следует помнить, что уровень качества Q2 является базовым для дальнейших уровней Q3 и Q4. То есть, как вы подготовитесь сейчас, будет зависеть, насколько качественно вы сможете обработать поверхность, если вдруг планы поменялись и вы решили вместо декоративной штукатурки (Q2) отделать комнату, например, венецианской штукатуркой (Q4). Как выглядит Q2? Данное качество поверхности допускает видимые отпечатки от инструментов и наплывы шпаклевочного раствора, а так же задиры и царапины до 1 мм. Отклонения по вертикали до 1 мм на 1 м (но не более 5 мм на всю высоту помещения), а так же тени от бокового света. Если вы выбираете в качестве финишных покрытий жидкие обои, текстурную краску или декоративную штукатурку, качество поверхности Q2 является самым экономичным и быстрым решением.👌 Сайт|Facebook|Instagram #knaufuzbekistan#fugen#rotbandfinish#satengips#q2