|
1Qter豆
大家帮我看看这个错误,这是错误想必大家应该都遇到过吧。
我自己添加一个类,报了这个错误。
下面是我自己定义的类.h文件:
#ifndef MYLINEEDIT_H
#define MYLINEEDIT_H
#include <QLineEdit>
class MyLineEdit : public QLineEdit{
Q_OBJECT
public:
explicit MyLineEdit(QWidget *parent = 0);
protected:
void keyPressEvent(QKeyEvent *event);
signals:
public
slots:};#endif // MYLINEEDIT_H
下面是我自己定义的类.cpp文件:
#include "mylineedit.h"
#include <QKeyEvent>
#include <QDebug>
MyLineEdit::MyLineEdit(QWidget *parent) : QLineEdit(parent)
{
}
void MyLineEdit::keyPressEvent(QKeyEvent *event){
qDebug() << tr("MyLineEdit()按下了毽子") ;
QLineEdit::keyPressEvent(event); // 忽略该事件
event->ignore();
}
下面是类mywidget.h文件:
#ifndef MYWIDGET_H
#define MYWIDGET_H
#include <QWidget>
namespace Ui {
class MyWidget;
}
class MyLineEdit;
class MyWidget : public QWidget{
Q_OBJECT
public:
explicit MyWidget(QWidget *parent = 0);
~MyWidget();
protected:
void keyPressEvent(QKeyEvent *event);
private:
Ui::MyWidget *ui;
MyLineEdit *mylinedit;
};
#endif // MYWIDGET_H
下面是mywidget.cpp文件:
#include "mywidget.h"
#include "ui_mywidget.h"
#include <QKeyEvent>
#include <QDebug>
MyWidget::MyWidget(QWidget *parent) : QWidget(parent), ui(new Ui::MyWidget){
ui->setupUi(this);
mylinedit = new MyLineEdit(this);
mylinedit->move(100,100);
}
MyWidget::~MyWidget(){
delete ui;
}
void MyWidget::keyPressEvent(QKeyEvent *event){
// qDebug() << tr("MyWidget()按下了毽子") ;
}
麻烦大家帮我看俺哪里错了啊,我上网上查阅说的我都试过了还是没有解决。
|
最佳答案
查看完整内容
#ifndef MYLINEEDIT_H
#define MYLINEEDIT_H
#include
class MyLineEdit : public QLineEdit{
public:
explicit MyLineEdit(QWidget *parent = 0);
protected:
void keyPressEvent(QKeyEvent *event);
};#endif // MYLINEEDIT_H
先改成这样试试。
|