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

Резултати

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

Пребарај: #ukip

当前筛选 #ukip清除筛选
Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38584 · 06.05.2022 г., 17:19

#Elezioni#RegnoUnito#Amministrative 140 consigli scrutinati su 146: #LAB|S&D: 2048 seggi (+48) #CON|ECR: 990 (-314) #LDEM|RE: 675 (+178) Indipendenti: 132 (+18) #Greens|G/EFA: 108 (+60) Associazioni dei residenti: 51 (+10) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-3) Consigli comunali vinti: #LAB|S&D: 62 (+5) #CON|ECR: 34 (-10) Senza controllo: 28 (+2) #LDEM|RE: 16 (+3) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38528 · 06.05.2022 г., 15:23

#Elezioni#RegnoUnito#Amministrative 122 consigli scrutinati su 146: #LAB|S&D: 1595 seggi (+56) #CON|ECR: 845 (-277) #LDEM|RE: 546 (+154) Indipendenti: 108 (+7) #Greens|G/EFA: 87 (+50) Associazioni dei residenti: 51 (+10) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-3) Consigli comunali vinti: #LAB|S&D: 52 (+6) #CON|ECR: 30 (-10) Senza controllo: 28 (+2) #LDEM|RE: 12 (+2) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38511 · 06.05.2022 г., 14:04

#Elezioni#RegnoUnito#Amministrative 111 consigli scrutinati su 146: #LAB|S&D: 1499 seggi (+46) #CON|ECR: 728 (-198) #LDEM|RE: 417 (+95) Indipendenti: 87 (+11) #Greens|G/EFA: 70 (+38) Associazioni dei residenti: 46 (+8) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-3) Consigli comunali vinti: #LAB|S&D: 50 (+6) #CON|ECR: 29 (-10) Senza controllo: 23 (+3) #LDEM|RE: 9 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38505 · 06.05.2022 г., 13:40

#Elezioni#RegnoUnito#Amministrative 107 consigli scrutinati su 146: #LAB|S&D: 1426 seggi (+48) #CON|ECR: 701 (-183) #LDEM|RE: 368 (+79) Indipendenti: 85 (+14) #Greens|G/EFA: 66 (+35) Associazioni dei residenti: 46 (+8) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-3) Consigli comunali vinti: #LAB|S&D: 49 (+6) #CON|ECR: 28 (-10) Senza controllo: 23 (+3) #LDEM|RE: 7 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38477 · 06.05.2022 г., 10:33

#Elezioni#RegnoUnito#Amministrative 77 consigli scrutinati su 146: #LAB|S&D: 1220 seggi (+35 rispetto al 2021) #CON|ECR: 549 (-122) #LDEM|RE: 261 (+58) Associazioni dei residenti: 40 (+6) Indipendenti: 40 #Greens|G/EFA: 39 (+23) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-2) Consigli comunali vinti: #LAB|S&D: 38 (+3) #CON|ECR: 19 (-6) Senza controllo: 16 (+2) #LDEM|RE: 4 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38472 · 06.05.2022 г., 07:30

#Elezioni#RegnoUnito#Amministrative 75 consigli scrutinati su 146: #LAB|S&D: 1189 seggi (+38 rispetto al 2021) #CON|ECR: 535 (-124) #LDEM|RE: 257 (+57) Associazioni dei residenti: 40 (+6) Indipendenti: 39 #Greens|G/EFA: 39 (+23) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-2) Consigli comunali vinti: #LAB|S&D: 37 (+3) #CON|ECR: 18 (-6) Senza controllo: 16 (+2) #LDEM|RE: 4 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38470 · 06.05.2022 г., 05:01

#Elezioni#RegnoUnito#Amministrative 70 consigli scrutinati su 146: #LAB|S&D: 1103 seggi (+38 rispetto al 2021) #CON|ECR: 473 (-118) #LDEM|RE: 240 (+54) Indipendenti: 38 (+2) #Greens|G/EFA: 35 (+20) Associazioni dei residenti: 26 (+4) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-2) Consigli comunali vinti: #LAB|S&D: 34 (+2) #CON|ECR: 17 (-5) Senza controllo: 15 (+2) #LDEM|RE: 4 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38469 · 06.05.2022 г., 04:19

#Elezioni#RegnoUnito#Amministrative 65 consigli scrutinati su 146: #LAB|S&D: 973 seggi (+28 rispetto al 2021) #CON|ECR: 423 (-95) #LDEM|RE: 163 (+40) Indipendenti: 35 (+3) #Greens|G/EFA: 30 (+20) Associazioni dei residenti: 19 (+4) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-2) Consigli comunali vinti: #LAB|S&D: 31 (+1) #CON|ECR: 17 (-4) Senza controllo: 15 (+2) #LDEM|RE: 2 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38466 · 06.05.2022 г., 03:26

#Elezioni#RegnoUnito#Amministrative 55 consigli scrutinati su 146: #LAB|S&D: 764 seggi (+21 rispetto al 2021) #CON|ECR: 365 (-81) #LDEM|RE: 139 (+33) Indipendenti: 34 (+3) #Greens|G/EFA: 30 (+20) Associazioni dei residenti: 19 (+4) #Reform|Destra anti-lockdown: 2 (+2) #UKIP|Destra: 0 (-2) Consigli comunali vinti: #LAB|S&D: 24 #CON|ECR: 15 (-2) Senza controllo: 14 (+1) #LDEM|RE: 2 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38460 · 06.05.2022 г., 02:18

#Elezioni#RegnoUnito#Amministrative 45 consigli scrutinati su 146: #LAB|S&D: 477 seggi (+1 rispetto al 2021) #CON|ECR: 259 (-53) #LDEM|RE: 100 (+27) Indipendenti: 32 (+3) #Greens|G/EFA: 25 (+18) Associazioni dei residenti: 19 (+4) #Reform|Destra anti-lockdown: 1 (+1) #UKIP|Destra: 0 (-1) Consigli comunali vinti: #LAB|S&D: 19 (-1) #CON|ECR: 14 Senza controllo: 11 #LDEM|RE: 1 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38454 · 06.05.2022 г., 01:47

#Elezioni#RegnoUnito#Amministrative 40 consigli scrutinati su 146: #LAB|S&D: 393 seggi (+3 rispetto al 2018) #CON|ECR: 212 (-47) #LDEM|RE: 95 (+24) Indipendenti: 30 (+2) #Greens|G/EFA: 18 (+14) Associazioni dei residenti: 17 (+4) #Reform|Destra anti-lockdown: 1 (+1) #UKIP|Destra: 0 (-1) Consigli comunali vinti: #LAB|S&D: 15 (-1) #CON|ECR: 13 Senza controllo: 11 #LDEM|RE: 1 (+1) @UltimoraPolitics

Ultimora.net - POLITICS

@UltimoraPOlitics · Post #38463 · 06.05.2022 г., 03:02

#Elezioni#RegnoUnito#Amministrative Consiglio di #Derby, risultati definitivi: #LAB|S&D: 7 seggi (+2) #CON|ECR: 5 (-3) #Reform|Destra anti-lockdown: 2 (+2) #LDEM|RE: 2 Indipendenti: 1 (+1) #UKIP|Destra: 0 (-2) Attuale composizione del Consiglio comunale: #CON|ECR: 18 #LAB|S&D: 16 #LDEM|RE: 8 #Reform|Destra anti-lockdown: 6 Indipendenti: 3 Il Consiglio rimane senza controllo. @UltimoraPolitics

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