
为什么鼠标左击事件不响应
1个回答
展开全部
您好,很高兴为您解答:
鼠标左击事件不响应,建议修改一下,如下:
//CButton.h
#ifndef CBUTTON_H
#define CBUTTON_H
#include <QPushButton>
#include <QtGui>
class CButton : public QPushButton
{
Q_OBJECT
public:
explicit CButton(QWidget *parent = 0);
signals:
public slots:
protected:
void mousePressEvent(QMouseEvent *);
};
#endif // CBUTTON_H
//CButton.cpp
#include "cbutton.h"
CButton::CButton(QWidget *parent) :
QPushButton(parent)
{
}
void CButton::mousePressEvent(QMouseEvent *e)
{
if(e->button() == Qt::LeftButton)
{
qDebug()<<"123";
}
}
//dialog.cpp
#include "dialog.h"
#include "ui_dialog.h"
#include "cbutton.h"
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
CButton *pbutton = new CButton(this);
}
Dialog::~Dialog()
{
delete ui;
}
转载,仅供参考。
如果我的回答没帮助到您,请继续追问。
鼠标左击事件不响应,建议修改一下,如下:
//CButton.h
#ifndef CBUTTON_H
#define CBUTTON_H
#include <QPushButton>
#include <QtGui>
class CButton : public QPushButton
{
Q_OBJECT
public:
explicit CButton(QWidget *parent = 0);
signals:
public slots:
protected:
void mousePressEvent(QMouseEvent *);
};
#endif // CBUTTON_H
//CButton.cpp
#include "cbutton.h"
CButton::CButton(QWidget *parent) :
QPushButton(parent)
{
}
void CButton::mousePressEvent(QMouseEvent *e)
{
if(e->button() == Qt::LeftButton)
{
qDebug()<<"123";
}
}
//dialog.cpp
#include "dialog.h"
#include "ui_dialog.h"
#include "cbutton.h"
Dialog::Dialog(QWidget *parent) :
QDialog(parent),
ui(new Ui::Dialog)
{
ui->setupUi(this);
CButton *pbutton = new CButton(this);
}
Dialog::~Dialog()
{
delete ui;
}
转载,仅供参考。
如果我的回答没帮助到您,请继续追问。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询