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

Резултати

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

Пребарај: #demokrasi

当前筛选 #demokrasi清除筛选
Gusdurian.Net

@gusduriannet · Post #2393 · 21.10.2020 г., 01:37

📚 TADARUS PEMIKIRAN GUSDURian Ciputat Eps. 3📚 _Assalamualaikum wr. wb. Shalom. Salam Sejahtera. Om Swastyastu. Namo Buddhaya. Salam Kebajikan_ *GUSDURian Ciputat* mempersembahkan: . *"Tadarus Pemikiran Gus Dur , Demokrasi Haruslah diperjuangkan "*. Tidak sedikit orang maupun kelompok yang mengatasnamakan agama, menentang keras sistem demokrasi yang dianggap sistem kafir, bukan sistem yang diajarkan oleh islam. Tetapi disisi lain, Gus Dur tokoh yang sangat dihormati dan dikagumi diberbagai lapisan masyarakat, malah memperjuangkan sistem demokrasi mati-matian di Indonesia ini. Bahkan beliau dianggap dan diangkat sebagai bapak Demokrasi Indonesia. Apa sih sebenarnya yang melatarbelakangi Gus Dur mempertahankan sistem demokrasi di Indonesia? Itulah tema yang akan kita bahas kali ini. So, ayo sama-sama kita buka pikiran dan gagasan untuk menyatukan pandangan dan pemahaman, mengupas tuntas sistem demokrasi yang kita jalankan di Indonesia ini. Moderator: - *Fitri Rahmayati* _(Penggerak GUSDURian Ciputat)_ *Pemantik* - *Subhi Azhari* _(Fellowship Akademi Kepemimpinan Gus Dur)_ - *Muizudin* _(Penggerak GUSDURian Ciputat)_ Moderator *Fitri Rahmayati* Tadarus pemikiran ini akan dilaksanakan pada: 📝Hari/Tanggal : Rabu, 21 Oktober 2020 ⏱️Jam : 20.00 - 22.00 WIB Diskusi:Via Zoom Meeting Link Pendaftaran: http://bit.ly/TadarusCiputat03 Bahan bacaan https://gusdurian.net/demokrasi-harus-diperjuangkan/ Contact Person : Rafi Sihabudin 📱 0856-9509-2642 Silahkan hubungi CP untuk informasi lebih lanjut. _Wassalamualaikum warahmatullahi wabarakatuh_ #TadarusPemikiran#GusDur#Demokrasi#AbdurrahmanWahid

Gusdurian.Net

@gusduriannet · Post #2408 · 26.10.2020 г., 05:23

Reposted from @gusdurian_makassar [FORUM BULANAN VIRTUAL #2] . "MENJERAT GUS DUR DAN GORO-GORONYA". . . Bersama : ▪️Ahmad Zainul Hamdi (editor buku goro-goro menjerat Gusdur) ▪️Virdika Risky Utama (penulis buku menjerat Gusdur) ▪️Syamsurijal Ad'han (Ketua LTN NU Sulawesi Selatan). . Moderator : Ernawati (Pengurus komisariat PMII UIM) . . Rabu, 28 Oktober 2020 Pukul 20.45 wita . . Via Zoom Meeting Link pendaftaran: https://s.id/ForumBulanan2 . . Live Fanpage Komunitas GUSDURian Makassar . . Free E-Sertifikat TERBUKA BAGI SIAPA SAJA . . #Gusdurian#gusdurianmakassar#GusdurianSulawesi#gusdurianindonesia#gurubangsa#demokrasi#keadilan#pluralism#santrigusdur#SALINGJAGA#covid_19

Gusdurian.Net

@gusduriannet · Post #2514 · 15.02.2021 г., 09:14

@gusdurian_makassar [FORUM BULANAN VIRTUAL #4] . . "Gus Dur & Gagasan Ekonomi Rakyat" . . Bersama : AH MAFTUCHAN (Direktur Eksekutif The PRAKARSA/GUSDURian) . WAHYU EKA SETIAWAN (FNKSDA Surabaya / WALHI Jatim) . Moderator : RARA (Penggerak GUSDURian Makassar) . . Rabu, 17 Februari 2021 . . Pendaftaran : https://s.id/forumbulanan4 . . Bahan bacaan: https://gusdurian.net/-gus-dur-dan-ekonomi-rakyat/ . . . #Gusdurian#gusdurianmakassar#GusdurianSulawesi#gusdurianindonesia#gurubangsa#demokrasi#keadilan#pluralism#santrigusdur#forumbulanan#pojokgusdur#pojokgusdurian#pojokgusduriankampus