@SapphicSanctum · Post #3075 · 28.02.2022 г., 18:10
https://twitter.com/YashikiNeko1/status/1498276821548163079 #sketches
Hashtags
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
Пребарај: #sketches
@SapphicSanctum · Post #3075 · 28.02.2022 г., 18:10
https://twitter.com/YashikiNeko1/status/1498276821548163079 #sketches
Hashtags
@SapphicSanctum · Post #2803 · 09.02.2022 г., 12:55
https://twitter.com/mlp_Double_Tap/status/1491282100603219972 #sketches
Hashtags
@artbysabertoofs · Post #95 · 10.10.2023 г., 16:41
Few scribbles over my wee break~ woo! #sketches
Hashtags
@yartydesignchannel · Post #123 · 03.03.2022 г., 16:43
40 min cada uno aprox. He estado realizando estudios para lograr la simplificación en los rostros. Aquí les dejo algunas muestras. Casi no hago rostros masculinos, así que, estoy saliendo de mi zona de confort. Pronto nuevos proyectos✨. #Sketches#Krita
@artbysabertoofs · Post #383 · 05.09.2025 г., 01:11
A few sketches done recently! First one for Ryker of his handsome fox. Then, McJicken's tiger, Farid! And lastly, Darius! 🐯 Thank y'all for the support lately! #art#sketches#wip
@anatomyarthub · Post #4706 · 16.03.2025 г., 05:26
#наброски#sketches @anatomyarthub
@anatomyarthub · Post #2513 · 22.01.2024 г., 10:15
#наброски#sketches @anatomyarthub
@anatomyarthub · Post #2221 · 26.11.2023 г., 09:08
#наброски#sketches @anatomyarthub
@anatomyarthub · Post #1944 · 09.10.2023 г., 08:59
#наброски#sketches @anatomyarthub
@anatomyarthub · Post #1934 · 08.10.2023 г., 04:22
#наброски#sketches @anatomyarthub
@anatomyarthub · Post #1925 · 01.10.2023 г., 06:00
#наброски#sketches Как нарисовать набросок людей. Первое, что нужно сделать, — разобраться с пропорциями. Для этого нарисуйте на листе линию и разбейте её на семь-восемь равных частей, если рисуете человека стоя, или на пять-шесть, если фигура сидит. Теперь заполните нарисованную шкалу сверху вниз, как на картинке. Сначала нарисуйте голову — она должна занять одно деление, затем грудную клетку — два деления, таз примерно на четвёртом делении, колени на пятом и стопы. Не забудьте, что у человека должны быть шея и руки, а ещё предусмотрите место под переходы от одной узловой точки к другой, например, от грудной клетки до таза. Чтобы не запутаться с пропорциями внутри самой фигуры, не прорисовывайте сразу линии тела. Оформите мышцы овалами, выделите суставы. Этот шаг многие пропускают, считая его примитивным, но именно он помогает новичкам сделать фигуру правильной. How to draw a sketch of people. The first thing to do is understand the proportions. To do this, draw a line on a sheet of paper and divide it into seven or eight equal parts if you are drawing a standing person, or into five or six if the figure is sitting. Now fill the drawn scale from top to bottom, as in the picture. First draw the head - it should take one division, then the chest - two divisions, the pelvis at about the fourth division, the knees at the fifth and the feet. Don’t forget that a person must have a neck and arms, and also provide space for transitions from one nodal point to another, for example, from the chest to the pelvis. In order not to get confused with the proportions within the figure itself, do not immediately draw the lines of the body. Form the muscles into ovals and highlight the joints. Many people skip this step, considering it primitive, but it is what helps beginners get the figure right. @anatomyarthub
@anatomyarthub · Post #1620 · 15.08.2023 г., 05:43
#наброски#sketches @anatomyarthub