Qt creator中如何用鼠标事件来实现按键响应
Qt creator中放了个按键,,现在我想用鼠标点击来实现响应,但是不想用信号槽来实现,想用鼠标按下事件来实现,请高手解答如何做??谢谢
[解决办法]
mousePressEvent()里面,判断if(m_pushButton->hasFocus()),然后在里面进行事件处理。
[解决办法]
应该是自定义了一个button
类似于
QPushButton *m_pushButton=new QPushButton
[解决办法]
//.h文件#ifndef NEWBUTTON_H#define NEWBUTTON_H#include <QPushButton>#include <QEvent>#include <QPoint>class CustomButton : public QPushButton{ Q_OBJECTpublic: explicit CustomButton(QWidget *parent = 0);private: void enterEvent(QEvent *e); void leaveEvent(QEvent *e); signals: void mouseEnter(); void mouseLeave();public slots: };#endif // NEWBUTTON_H
[解决办法]
然后我直接接受这个信号就可以
CustomButton *button=new CustomButton(); connect(button,SIGNAL(mouseEnter()),this,SLOT("该怎么处理就怎么处理"));
[解决办法]
声明下、我这个事件是鼠标划过事件。然后鼠标按下事件 自己去写就OK了
[解决办法]
那你装事件过滤器吧
m_pushButton->installEventFilter(this);bool MainWindow::eventFilter(QObject *o, QEvent *e){ if(o == ui->pushButton) { if(e->type() == QEvent::MouseButtonPress) { //进行事件处理 } } return false;}