Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » PyQt QGraphicsPixmapItem рисовать на изображении [RSS Feed]

#1 Март 17, 2014 00:38:02

vrabey
От: Киев
Зарегистрирован: 2013-04-17
Сообщения: 209
Репутация: +  23  -
Профиль   Отправить e-mail  

PyQt QGraphicsPixmapItem рисовать на изображении

можно ли рисовать поверх изображения выведенного с помощью QGraphicsPixmapItem,
и если да то как?

вот сам элемент:

class ImageElement(QtGui.QGraphicsPixmapItem):
    def __init__(self, pixmap, parent = None, scene = None, img_name=None):
        QtGui.QGraphicsPixmapItem.__init__(self, pixmap, parent, scene)
#-----------------------------------------------
        self.img_name = img_name
        self.setTransformationMode(QtCore.Qt.SmoothTransformation) 
        self.setCursor(QtCore.Qt.PointingHandCursor) 
        self.setFlag(QtGui.QGraphicsItem.ItemIsMovable)
пробывал рисовать внутри
paintEvent()
- не получилось
class ImageElement(QtGui.QGraphicsPixmapItem):
    def __init__(self, pixmap, parent = None, scene = None, img_name=None):
        QtGui.QGraphicsPixmapItem.__init__(self, pixmap, parent, scene)
#-----------------------------------------------
        self.img_name = img_name
        self.setTransformationMode(QtCore.Qt.SmoothTransformation) 
        self.setCursor(QtCore.Qt.PointingHandCursor) 
        self.setFlag(QtGui.QGraphicsItem.ItemIsMovable)
        print self.img_name
        self.text = "3"
    def mousePressEvent(self, event):
        if event.buttons() & QtCore.Qt.LeftButton:
            pass
            #self.setOpacity(0.0)
            print self.pos()
    def paintEvent(self, event):
        painter = QtGui.QPainter()
        painter.begin(self)
        # Здесь nроизводим рисование на компоненте
        paint.setPen(QtGui.QColor(168, 34, 3))
        paint.setFont(QtGui.QFont('Decorative', 10))
        paint.drawText(event.rect(), QtCore.Qt.AlignCenter, self.text)
        painter.end()

Отредактировано vrabey (Март 17, 2014 00:39:14)

Офлайн

#2 Март 17, 2014 18:50:54

vrabey
От: Киев
Зарегистрирован: 2013-04-17
Сообщения: 209
Репутация: +  23  -
Профиль   Отправить e-mail  

PyQt QGraphicsPixmapItem рисовать на изображении

vrabey
можно ли рисовать поверх изображения выведенного с помощью QGraphicsPixmapItem,
и если да то как?
или как вывести фигуру с текстом внутри - текст вычисляется динамически, так чтобы фигурой и текстом можно было манипулировать одновремменно .
сделать их не зависимыми друг от друг и обрабатывать по очереди получильсь. как их привязать друг к другу?

Отредактировано vrabey (Март 17, 2014 18:51:18)

Офлайн

  • Начало
  • » GUI
  • » PyQt QGraphicsPixmapItem рисовать на изображении[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version