求助!
因为本人是新手,现在遇到了一个运行时报没有itemEntered信号不存在,其实我继承的类的实现也很简单,本人是直接采用继承QTableWidget的方式,就是运行时报这个信号不存在,现在请求大家的帮助!
附上我的代码:
#include <QTableWidget>
#include <QPixmap>
#include <QEvent>
class TxTableWidget : public QTableWidget
{
public:
TxTableWidget(int i, int j, QWidget *parent);
~TxTableWidget();
public slots:
void itemChangedd(QTableWidgetItem *item);
void cellEnteredd(int row, int column);
private:
QTableWidgetItem *pre;
};
TxTableWidget::TxTableWidget(int i, int j, QWidget *parent) :
QTableWidget(i, j, parent)
{
setMouseTracking(true);
QObject::connect(this, SIGNAL(itemEntered(QTableWidgetItem *item)), SLOT(itemChangedd(QTableWidgetItem *item)));
QObject::connect(this, SIGNAL(cellEntered(int row, int column)), SLOT(cellEnteredd(int row, int column)));
}
TxTableWidget::~TxTableWidget()
{
}
void TxTableWidget::itemChangedd(QTableWidgetItem *item)
{
printf("hehe\n");
QTableWidgetItem *t = currentItem();
if (pre) {
QBrush *b = new QBrush();
b->setStyle(Qt::NoBrush);
pre->setBackground(*b);
}
if (t) {
QBrush *b = new QBrush(QPixmap(":pic/smiley/innerbuttonmark.bmp"));
b->setStyle(Qt::TexturePattern);
t->setBackground(*b);
}
pre = t;
}
void TxTableWidget::cellEnteredd(int row, int column)
{
printf("hehe\n");
}