@cecmoldova · Post #2781 · 02.04.2025 г., 10:14
📌 𝐂𝐄𝐂 îș𝐢 𝐜𝐨𝐧𝐬𝐨𝐥𝐢𝐝𝐞𝐚𝐳ă 𝐫𝐞𝐳𝐢𝐥𝐢𝐞𝐧ț𝐚 ș𝐢 𝐝𝐞𝐳𝐯𝐨𝐥𝐭ă 𝐚𝐛𝐢𝐥𝐢𝐭ăț𝐢𝐥𝐞 𝐝𝐞 𝐠𝐞𝐬𝐭𝐢𝐨𝐧𝐚𝐫𝐞 𝐞𝐟𝐢𝐜𝐢𝐞𝐧𝐭ă 𝐚 𝐫𝐢𝐬𝐜𝐮𝐫𝐢𝐥𝐨𝐫 î𝐧 𝐚𝐥𝐞𝐠𝐞𝐫𝐢 Detalii pe https://cec.md. #CECMoldova#DemocrațiaContează#Instruire
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
Пребарај: #instruire
@cecmoldova · Post #2781 · 02.04.2025 г., 10:14
📌 𝐂𝐄𝐂 îș𝐢 𝐜𝐨𝐧𝐬𝐨𝐥𝐢𝐝𝐞𝐚𝐳ă 𝐫𝐞𝐳𝐢𝐥𝐢𝐞𝐧ț𝐚 ș𝐢 𝐝𝐞𝐳𝐯𝐨𝐥𝐭ă 𝐚𝐛𝐢𝐥𝐢𝐭ăț𝐢𝐥𝐞 𝐝𝐞 𝐠𝐞𝐬𝐭𝐢𝐨𝐧𝐚𝐫𝐞 𝐞𝐟𝐢𝐜𝐢𝐞𝐧𝐭ă 𝐚 𝐫𝐢𝐬𝐜𝐮𝐫𝐢𝐥𝐨𝐫 î𝐧 𝐚𝐥𝐞𝐠𝐞𝐫𝐢 Detalii pe https://cec.md. #CECMoldova#DemocrațiaContează#Instruire
@cecmoldova · Post #3541 · 02.04.2026 г., 12:54
👉Comisia Electorală Centrală continuă seria activităților de instruire destinate procurorilor și judecătorilor, axate pe investigarea și examinarea contravențiilor privind coruperea electorală, coruperea privind întrunirile organizate, precum și alte fapte care aduc atingere drepturilor constituționale ale persoanelor fizice. #CECMoldova#DemocrațiaContează#Instruire#CoE#INJ
@cecmoldova · Post #3558 · 16.04.2026 г., 06:25
👉Comisia Electorală Centrală a organizat o sesiune de instruire cu privire la utilizarea modulului „Contestații electorale”, un instrument digital care permite depunerea și gestionarea contestațiilor în format electronic. 🖊La instruire au participat reprezentanți ai partidelor politice și societății civile, care au avut oportunitatea să se familiarizeze cu funcționalitățile platformei și cu modalitatea de utilizare a acesteia în practică. #CECMoldova#DemocrațiaContează#ModulContestațiiElectorale#Instruire#PNUDMoldova
@cecmoldova · Post #3538 · 01.04.2026 г., 10:45
‼️ În contextul organizării alegerilor locale noi și a referendumurilor locale din 17 mai 2026, organele electorale inferioare din localitățile vizate participă la sesiuni de instruire dedicate pregătirii și desfășurării corespunzătoare a scrutinelor. Activitățile de instruire sunt organizate de președinții consiliilor electorale de circumscripție electorală, în colaborare cu CICDE - Centrul de Instruire Continuă în Domeniul Electoral, și sunt destinate membrilor organelor electorale implicați în administrarea procesului electoral. #CECMoldova#DemocrațiaContează#AlegeriLocaleNoi#ALN#17Mai2026#ReferendumLocal#Instruire#OrganeElectorale#CICDE