使用QT语言写一段获取鼠标位置的程序
时间: 2024-09-30 21:15:36 浏览: 31
在Qt中,你可以使用`QCursor`类和其提供的静态函数来获取鼠标的位置。以下是一个简单的示例,它会在窗口关闭之前打印出鼠标点击的位置:
```cpp
#include <QApplication>
#include <QWidget>
#include <QCursor>
class MainWindow : public QWidget {
public:
MainWindow(QWidget *parent = nullptr) : QWidget(parent) {
// 设置窗口大小和标题
setFixedSize(400, 300);
.setWindowTitle("Mouse Position");
// 当鼠标按下事件发生时,获取并显示鼠标位置
connect(&QApplication::instance(), &QApplication::mousePressEvent, this, &MainWindow::mouseMoveEvent);
}
private slots:
void mouseMoveEvent(QMouseEvent *event) {
// 获取鼠标当前的屏幕坐标
QPoint pos = event->globalPos();
qDebug() << "鼠标位置: (" << pos.x() << ", " << pos.y() << ")";
}
};
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
// 创建主窗口
MainWindow window;
window.show();
return app.exec();
}
```
在这个例子中,当用户点击窗口时,会触发`mouseMoveEvent`槽函数,该函数通过`QPoint::globalPos()`方法获取鼠标在屏幕上相对于屏幕左上角的坐标。
阅读全文