美文网首页
QT:状态栏中显示鼠标坐标值

QT:状态栏中显示鼠标坐标值

作者: 擎烛而走_b2ce | 来源:发表于2018-06-02 10:31 被阅读0次

如何在QT状态栏中插入窗口显示信息

  • 新建QLabel成员 QLabel* m_statusLabel
//右下角状态栏显示坐标用
    m_statusLabel = new QLabel;
    m_statusLabel->resize(100, 30);
    ui.statusBar->addPermanentWidget(m_statusLabel);
  • addPermanentWidget(m_statusLabel);
    代表在状态栏右下角插入QLabel控件

  • 重写鼠标移动事件


void mouseMoveEvent(QMouseEvent * event)
{
    double x = event->pos().x();
    double y = event->pos().y();
    QString str = "(" + QString::number(x) + "," + QString::number(y) + ")";
    m_statusLabel->setText(str);
}

获取坐标值后,将m_statusLabel的内容设置为坐标值。

利用以上程序实现后,用户需要点击屏幕才可以获取坐标值,这是因为QWidget中mouseTracking默认是false的,即当用户点击鼠标一次后,才开始追踪鼠标位置,如果将该值置为true就可以实现鼠标移动即追踪位置。

相关文章

网友评论

      本文标题:QT:状态栏中显示鼠标坐标值

      本文链接:https://www.haomeiwen.com/subject/lkzlsftx.html