Увеличить ширину QPen
Мне нужно увеличить ширину пера для приведенного ниже кода с помощью Painter/QPen, но ничего из того, что я пробовал, не работает. Может кто-нибудь указать мне в правильном направлении?
while c_len < MAX_LENGTH:
# Set the pen color for this segment
sat = 200 * (MAX_LENGTH - c_len) / MAX_LENGTH
hue = (color + 130 * (height - y_s) / height) % 360
p.setPen(QPen(QColor_HSV(hue, sat, 255, 20), 2))
1 ответ
Вы можете использовать метод setWidth QPen следующим образом:
while c_len < MAX_LENGTH:
# Set the pen color for this segment
sat = 200 * (MAX_LENGTH - c_len) / MAX_LENGTH
hue = (color + 130 * (height - y_s) / height) % 360
pen = QPen(QColor_HSV(hue, sat, 255, 20))
pen.setWidth(2)
p.setPen(pen)
Простое присвоение конструктору значения 2 не работает, потому что для ваших аргументов нет соответствующей подписи.
В качестве альтернативы используйте аргументы, поддерживаемые сигнатурой:
pen = QPen(QColor_HSV(hue, sat, 255, 20), 2, QtCore.Qt.SolidLine)
Это предпочтительнее, так как позволяет избежать отдельного вызова функции, который в Python работает медленно .