Advertisement
Guest User

Untitled

a guest
Apr 16th, 2012
46
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.08 KB | None | 0 0
  1. #include <QtCore>
  2. #include <QtGui>
  3.  
  4. class MyWidget: public QWidget
  5. {
  6. public:
  7.     explicit MyWidget(QWidget *parent = NULL) : QWidget(parent) {}
  8.  
  9. protected:
  10.     virtual void mousePressEvent(QMouseEvent *event)
  11.     {
  12.         qDebug() << "press" << event->pos();
  13.         startPos = event->pos();
  14.     }
  15.  
  16.     virtual void mouseMoveEvent(QMouseEvent *event)
  17.     {
  18.         qDebug() << "move" << event->pos();
  19.         if ((event->pos() - startPos).manhattanLength() > 5) {
  20.             qDebug() << "drag";
  21.             QDrag *drag = new QDrag(this);
  22.             QMimeData *mimeData = new QMimeData;
  23.             mimeData->setText("Data");
  24.             drag->setMimeData(mimeData);
  25.             drag->start();
  26.         }
  27.     }
  28.  
  29.     virtual void mouseReleaseEvent(QMouseEvent *event)
  30.     {
  31.         qDebug() << "release" << event->pos();
  32.         qDebug() << "click";
  33.     }
  34.  
  35. private:
  36.     QPoint startPos;
  37. };
  38.  
  39. int main(int argc, char *argv[])
  40. {
  41.     QApplication app(argc, argv);
  42.  
  43.     MyWidget myWidget;
  44.     myWidget.resize(100, 100);
  45.     myWidget.show();
  46.  
  47.     return app.exec();
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement