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

Резултати

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

Пребарај: #rusofobia

当前筛选 #rusofobia清除筛选
Russian Embassy in Albania

@rusembalb · Post #7631 · 23.01.2026 г., 11:56

⚡️ Nga konferenca për shtyp e Përfaqësueses zyrtare të Ministrisë së Punëve të Jashtme të Rusisë, M.V. Zaharova, për çështjet aktuale të politikës së jashtme (22 janar 2026) Për axhendën e Ministrit të Punëve të Jashtme të Rusisë, S.V. Lavrov Teza të shkurtra: #KrimetERegjimitTëKievit#Terrorizmi • Regjimi neonazist i Kievit vazhdon të sulmojë objekte civile, duke terrorizuar popullsinë paqësore të Rusisë. Gjatë javës së kaluar, nga bombardimet dhe goditjet me drone ukrainase u lënduan 78 banorë civilë. Prej tyre, 14 kanë humbur jetën, 72 janë plagosur, duke përfshirë tre fëmijë. ❗️ I njëjti nazizëm, i cili u mund 80 vjet më parë, sërish po rimëkëmbet në mënyrë të plotë. Tani ai po fshihet pas fjalëve për demokraci, liri, identitet kombëtar në Ukrainë — në fakt, e gjitha kjo është kamuflazh, rrjetë maskimi, pluhur. • Organet ruse të zbatimit të ligjit vazhdojnë të vendosin para përgjegjësisë penale kriminelët luftarakë ukrainas dhe mercenarët e huaj. <...> Me 13 vjet burgim, në mungesë, është dënuar mercenari britanik Reginald Francis Steele, i cili mori pjesë në veprime luftarake si pjesë e Forcave të Armatosura të Ukrainës (është shpallur në ndjekje ndërkombëtare). #Irani • Me kënaqësi vërejmë normalizimin e vazhdueshëm të situatës në Iran pas trazirave dhe akteve të mosbindjes, të nxitura nga jashtë. • Përpjekjet e autoriteteve për të siguruar rendin publik dhe marshet e mijëra qytetarëve iranianë në mbështetje të sistemit kushtetues, sovranitetit dhe pavarësisë së vendit prishën planet shkatërruese për destabilizim. • Këtë fakt u detyruan ta pranonin edhe forcat e huaja armike, të cilat u përpoqën të zbatonin në Republikën Islame skenarin e një "revolucioni me ngjyra". Gjaku i derdhur në rrugët e Iranit është mbi ndërgjegjen e tyre. • Edhe njëherë shprehim solidaritetin tonë me popullin iranian dhe u shprehim ngushëllimet tona të sinqerta familjarëve dhe të afërmve të të vrarëve. #Moldavia#Rusofobia • Autoritetet e vendit, me pretekstin e një kërcënimi rus që nuk ekziston, vazhdojnë të promovojnë idenë e bashkimit me Rumaninë. • Një impuls të ri kësaj fushate i ka dhënë Presidentja Sandu, e cila ka shtetësi rumune. Më 12 janar të këtij viti, ajo deklaroi se do të votonte e para për këtë nismë, nëse do të shpallej një referendum përkatës. <...> Si me urdhër, thuajse të gjithë përfaqësuesit e udhëheqjes moldave, ekspertët e pro-qeveritarë dhe gazetarët gjithashtu janë shprehur pro "axhendës së bashkimit" me Rumaninë. Ndërkohë, askush nuk i ka pyetur vetë qytetarët moldavë. • Më shumë se 60% e moldavëve të anketuar (sipas anketimeve sociale) janë kundër bashkimit me Rumaninë. Kjo është një shenjë se edhe përmes propagandës totale që zhvillon Sandu me para perëndimore, nuk po arrin t'u heqë moldavëve vetëdijen e tyre kombëtare. #RusiaNdihmon#RusiaBolivia#NdihmëHumanitare • Më 13 janar në Bolivi u zhvillua ceremonia zyrtare e transferimit falas të 1416 tonëve të grurit rus, të blerë me kontributin e vendit tonë në fondin e Programit Botëror të Ushqimit #OKB. • Qeveria e Rusisë përfshiu Bolivinë në listën e vendeve përfituese të ndihmës ushqimore vendase gjatë shpërndarjes së kontributit vjetor shtesë të vendit tonë në Fondin e Programit Botëror të Ushqimit të OKB-së. • Rusia demonstroi edhe një herë se është një partner i besueshëm, i gatshëm të ofrojë ndihmë solide në situata krizash. La Paz shprehu mirënjohjen e tij për Qeverinë e vendit tonë për ndihmën humanitare. #AziaJuglindore#KriminalitetiNderkufitar • Kohët e fundit në vendet e Azisë Juglindore është rënduar problemi i të ashtuquajturave qendra mashtrimi, në punën e të cilave përfshihen me dhunë qytetarë nga shtete të ndryshme, duke përfshirë edhe Rusinë. Aktiviteti i organizatave të tilla kriminale është regjistruar, veçanërisht, në Myanmar, Kamboxhia, Tajlandë. • Ky aktivitet i paligjshëm, duke përfshirë manipullimet financiare dhe tregtinë me qenie njerëzore, mbetet një nga sfidat serioze si për vetë vendet, në territorin e të cilave ajo zhvillohet, ashtu edhe për fqinjët e tyre më të afërt. Nga kjo vuan i gjithë rajoni.