用qt写一个放置qlabel可使qlabel跟随鼠标移动的程序
时间: 2023-05-20 11:06:30 浏览: 468
可以使用以下代码实现:
```cpp
#include <QApplication>
#include <QLabel>
#include <QMouseEvent>
class FollowLabel : public QLabel
{
public:
FollowLabel(QWidget *parent = nullptr) : QLabel(parent) {}
protected:
void mouseMoveEvent(QMouseEvent *event) override
{
move(event->globalPos() - QPoint(width() / 2, height() / 2));
}
};
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
FollowLabel label("Follow Me!");
label.setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);
label.setAttribute(Qt::WA_TranslucentBackground);
label.show();
return a.exec();
}
```
这个程序使用 Qt 编写,创建了一个继承自 QLabel 的 FollowLabel 类,重载了 mouseMoveEvent 函数,使标签能够跟随鼠标移动。在 main 函数中,创建了一个 FollowLabel 对象,并设置了窗口属性,最后显示出来。
阅读全文