• 3876阅读
  • 4回复

[提问]关于Qt的标签 [复制链接]

上一主题 下一主题
离线jingping1231
 
只看楼主 倒序阅读 楼主  发表于: 2011-06-13
— 本帖被 XChinux 从 C/C++基础 移动到本区(2011-06-13) —
我想请教各位大侠一个Qt的问题,如何实现随着鼠标的移动,在鼠标右下角跟随一个标签,可以把当前鼠标在屏幕的位置在标签里显示出来。
离线guuyan

只看该作者 1楼 发表于: 2011-06-13
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QMouseEvent>
#include <QString>
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    ui->centralWidget->setMouseTracking(true);
    label=new QLabel(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}
void MainWindow::mouseMoveEvent(QMouseEvent *event){
    int x=event->x();
    int y=event->y();
    QString a=QString(tr("x: %0,y:%1").arg(x).arg(y));
    label->setText(a);
    label->show();
    label->move(x,y+9);
}
离线guuyan

只看该作者 2楼 发表于: 2011-06-13
ui里面也要选上选上MouseTracking,当然你不用ui的话就无所谓了
离线jingping1231
只看该作者 3楼 发表于: 2011-06-14
非常感谢楼上的回答。
离线jingping1231
只看该作者 4楼 发表于: 2011-06-14
想再请教一下,应为我是在Qwidgt中来捕获mouseMoveEvent,可是在我的Qwidgt被其他一些控件覆盖了,现在就是捕获不到mousemove的信号,该怎么办?
快速回复
限100 字节
 
上一个 下一个