Qt鼠标事件总结
(2012-05-18 12:05:51)
标签:
鼠标事件qtit |
分类: QT |
//鼠标按下事件
void QWidget::mousePressEvent(QMouseEvent *event)
{
QString str="("+QString::number(event->x())+","+QString::number(event->y())+")";
// ui->lineEdit->setText(tr("鼠标按下")+str);
if(event->button()==Qt::LeftButton)
{
ui->lineEdit->setText(tr("鼠标左键按下:")+str);
}
else if(event->button()==Qt::RightButton)
{
ui->lineEdit->setText(tr("鼠标右键按下:")+str);
}
else if(event->button()==Qt::MidButton)
{
ui->lineEdit->setText(tr("鼠标中键按下:")+str);
}
}
//鼠标移动事件
void QWidget::mouseMoveEvent(QMouseEvent *event)
{
QString str="("+QString::number(event->x())+","+QString::number(event->y())+")";
// ui->lineEdit->setText(tr("鼠标移动")+str);
if(event->buttons()&Qt::LeftButton)
ui->lineEdit->setText(tr("鼠标左键按下移动")+str);//不明白为什么会有判断移动的因素,看英文文档也没有看出端倪,呵呵,只有积累顺便记住了
else if(event->buttons()&Qt::RightButton)
ui->lineEdit->setText(tr("鼠标右键按下移动")+str);
else if(event->buttons()&Qt::MidButton)
ui->lineEdit->setText(tr("鼠标中键按下移动")+str);
}
//鼠标释放事件
void QWidget::mouseReleaseEvent(QMouseEvent *event)
{
QString str="("+QString::number(event->x())+","+QString::number(event->y())+")";
// ui->lineEdit->setText(tr("鼠标释放")+str);
if(event->button()==Qt::LeftButton)
{
ui->lineEdit->setText(tr("鼠标左键释放:")+str);
}
else if(event->button()==Qt::RightButton)
{
ui->lineEdit->setText(tr("鼠标右键释放:")+str);
}
else if(event->button()==Qt::MidButton)
{
ui->lineEdit->setText(tr("鼠标中键释放:")+str);
}
}