现在的位置: 首页 > 综合 > 正文

鼠标移动事件&键盘按下事件

2013年09月18日 ⁄ 综合 ⁄ 共 713字 ⁄ 字号 评论关闭

 

/*以下是鼠标移动事件*/

void MainWindow::mouseMoveEvent(QMouseEvent *m)

{//这里的函数名和参数不能更改

QCursor my(QPixmap("E:/Qt/Qt-Creator-Example/event/time.png"));

//为鼠标指针选择图片,注意这里要用绝对路径,且要用“/”,而不能用“/”

QApplication::setOverrideCursor(my);

//将鼠标指针更改为自己设置的图片

int x = m->pos().x();

int y = m->pos().y();

//获取鼠标现在的位置坐标

ui->pushButton->setText(tr("鼠标现在的坐标是(%1,%2), 哈哈好玩吧").arg(x).arg(y));

//将鼠标的位置坐标显示在按钮上

ui->pushButton->move(m->pos());

//让按钮跟随鼠标移动

}

/*以下是键盘按下事件*/

void MainWindow::keyPressEvent(QKeyEvent *k)

{

if(k->key() == Qt::Key_A) //判断是否是A键按下

{

ui->label->setPixmap(QPixmap("E:/Qt/Qt-Creator-Example/event/linux.jpg"));

ui->label->resize(100,100);

//更改标签图片和大小

}

}

注意:这两个函数不是自己新建的,而是对已有函数的重定义,所有函数名和参数都不能改。第一个函数对鼠标移动事件进行了重写。其中实现了鼠标指针的更改,和按钮跟随鼠标移动的功能。

第二个函数对键盘的A键按下实现了新的功能。

【上篇】
【下篇】

抱歉!评论已关闭.