zoukankan      html  css  js  c++  java
  • 处理鼠标响应事件(最简单控件 good)

    贴下代码:

    #ifndef MYWIDGET_H
    #define MYWIDGET_H

    #include <QWidget>
    #include <QtGui>
    #include <QMouseEvent>

    class MyWidget : public QWidget
    {
    public:
        MyWidget();
        void mousePressEvent(QMouseEvent *event);
        void mouseMoveEvent(QMouseEvent *event);
        void mouseReleaseEvent(QMouseEvent *event);
        void paintEvent(QPaintEvent *event);

    private:
        QPoint m_PointStart;
        QPoint m_PointEnd;
    };

    #endif // MYWIDGET_H
    #include <QtGui/QApplication>
    #include "mainwindow.h"

    #include "mywidget.h"

    int main(int argc, char *argv[])
    {
        QApplication a(argc, argv);
        MyWidget widget;
        widget.show();

        return a.exec();
    }
    #include "mywidget.h"

    MyWidget::MyWidget()
    {
        resize(240,320);
    }

    void MyWidget::mousePressEvent(QMouseEvent *event)
    {
        m_PointStart = event->pos();

    }

    void MyWidget::mouseMoveEvent(QMouseEvent *event)
    {
        //m_PointEnd = event->pos();
       //update();
    }

    void MyWidget::mouseReleaseEvent(QMouseEvent *event)
    {
        m_PointEnd = event->pos();
        update();
    }

    void MyWidget::paintEvent(QPaintEvent *event)
    {
        QPainter painter(this);
        painter.setBrush(QBrush(QColor(255,0,0)));
        painter.drawPixmap(0,0,240,320,QPixmap("images/frame1.jpg"));

        if(m_PointStart.x() < m_PointEnd.x())
            painter.drawPixmap(0,0,240,320,QPixmap("images/frame2.jpg"));
        else if(m_PointStart.x() > m_PointEnd.x())
            painter.drawPixmap(0,0,240,320,QPixmap("images/frame3.jpg"));

    }

    http://www.cppblog.com/qianqian/archive/2010/07/27/121418.html

  • 相关阅读:
    设计模式之代理模式
    Java面试总结系列之Collections.sort()
    Scala基础
    Win7 电脑设置临时网络,无法加入网络;internet禁止网络共享
    Java面试题系列 提高Java I/O 性能
    电子商务中:B2C、B2B、C2B、C2C、O2O、P2P
    JVM内存格局总结
    Dubbo相关博文整理
    Java面试题汇总(一)
    Java多线程总结
  • 原文地址:https://www.cnblogs.com/findumars/p/5805090.html
Copyright © 2011-2022 走看看