Название: Увеличение рисунка Отправлено: Владимир от Октябрь 08, 2010, 16:43 Вывожу рисунок в QLabel
MyLabel *TabLb1=new MyLabel(); QPixmap pix1; pix1.load(FilName+name.toString()); TabLb1->setPixmap(pix1); TabLb1->setScaledContents(true); TabLb1->show(); Как сделать так чтобы при нажатии мышью на какую либо область в рисунке, рисунок увеличивался с централизацией на месте клика? Название: Re: Увеличение рисунка Отправлено: shirushizo от Октябрь 09, 2010, 09:39 1. Закинуть TabLb1 в QScrollArea.
2. Переопределять метод : void QWidget::mousePressEvent ( QMouseEvent * event ) [virtual protected] 3. В методе получаешь позицию курсора const QPoint & QMouseEvent::pos () 4.Увеличиваешь картинку QPixmap QPixmap::transformed (...) 5. Увеличиваешь TabLb1 TabLb1->resize(QPixmap::size()) 6. Двигаешь ползунки QScrollBar* QScrollArea::horizontalScrollBar () void QScrollBar::setValue(int value) Название: Re: Увеличение рисунка Отправлено: stump от Октябрь 09, 2010, 18:53 widget.h
Код: class MyLabel : public QLabel widget.cpp Код: QGraphicsProxyWidget* proxyWidget = NULL; |