Qt实现屏幕中间显示小点,打游戏瞬狙,你还在屏幕中间贴红点吗?
打游戏瞬狙的时候,觉得屏幕中间如果有一个红点就好了,猛然间意识到,我可是学过Qt的人,这点事我自己能实现的啊!
实现过程非常简单,不多说,效果如下:
上代码
新建项目起名为 AimPoint
图片
aimpoint.h
#ifndef AIMPOINT_H
#define AIMPOINT_H#include <QWidget>class AimPoint : public QWidget
{Q_OBJECT
public:AimPoint(QWidget *parent = nullptr);
protected:void paintEvent(QPaintEvent *event) override;
private:QPixmap pix;
};
#endif // AIMPOINT_H
- aimpoint.cpp
#include "aimpoint.h"
#include <QPainter>
#include <QApplication>
#include <QDesktopWidget>
#include <windows.h>AimPoint::AimPoint(QWidget *parent): QWidget(parent)
{setWindowFlags(Qt::FramelessWindowHint | Qt::WindowStaysOnTopHint);setAttribute(Qt::WA_TranslucentBackground,true);setAttribute(Qt::WA_TransparentForMouseEvents, true);pix.load(":/zhunxing.png");resize(pix.size());//获取桌面宽高QRect screenRect = QApplication::desktop()->screenGeometry();int screenWidth = screenRect.width();int screenHeight = screenRect.height();move((screenWidth-width())/2,(screenHeight-height())/2);//设置窗口穿透SetWindowLong((HWND)winId(), GWL_EXSTYLE, GetWindowLong((HWND)winId(), GWL_EXSTYLE) |WS_EX_TRANSPARENT | WS_EX_LAYERED);
}void AimPoint::paintEvent(QPaintEvent *event)
{Q_UNUSED(event)QPainter paint(this);paint.drawPixmap(0,0,pix);
}
- main.cpp
#include "aimpoint.h"
#include <QApplication>int main(int argc, char *argv[])
{QApplication a(argc, argv);AimPoint w;w.show();return a.exec();
}
成品
链接:https://pan.baidu.com/s/1K4reGoJrubLkhte16i4_XA
提取码:jfzg
Qt实现屏幕中间显示小点,打游戏瞬狙,你还在屏幕中间贴红点吗?相关推荐
- java如何在窗口上显示数据_如何把Java程序窗口在屏幕中间显示
摘要:这篇Java开发技术栏目下的"如何把Java程序窗口在屏幕中间显示",介绍的技术点是"Java程序.屏幕中间.Java.显示.窗口.中间",希望对大家开发 ...
- linux屏幕分辨率文件,Ubuntu 16.04 LTS设置屏幕分辨率显示Unknown display 解决
新装完Ubuntu 16.04 LTS 通过System settings-->Displays 设置屏幕分辨率 显示"Unknown display",选择后无反应,并且屏 ...
- 关于设置安卓屏幕的显示方向
游戏中要设置安卓的显示方向,从网上查了查资料. 文章转载自 http://cnetwei.iteye.com/blog/781602 ,感谢原作者... 详解Android中的屏幕方向 屏幕方向 是对 ...
- 计算机游戏中屏幕上显示的,电脑在玩全屏游戏的时候显示屏老是出现无信号
公告: 为响应国家净网行动,部分内容已经删除,感谢读者理解. 话题:电脑在玩全屏游戏的时候显示屏老是出现无信号 问题详情:我在玩CF的时候 每次进入游戏 显示屏突然出现无信号 好几次了推荐回答:这样的 ...
- H5不同屏幕大小显示不同的文字大小图片大小
H5不同屏幕大小显示不同的文字大小图片大小 原理:识别屏幕宽度,利用JS的判断进行分配不同的尺寸 文字大小(HTML部分) <div id="size">大小文字< ...
- JS实现浏览器跨屏跳转窗口/控制屏幕双屏显示
(高版本的谷歌,edge不支持跨屏,需要降低浏览器版本86.0版本)低版本谷歌浏览器 链接:百度网盘 请输入提取码https://pan.baidu.com/s/1iqgvVYSbgeoMC7WBFD ...
- 输出倒三角图案:在屏幕上显示如下倒三角图案
输出倒三角图案:在屏幕上显示如下倒三角图案 /*输出倒三角图案:在屏幕上显示如下倒三角图案. * * * * * * * * * * 试编写相应程序.*/ ...
- Qt窗口屏幕居中显示 (ZT)
窗口的屏幕居中显示问题,在各开发工具中原理相同,首先使用特定的方法得到显示屏幕的宽度和高度,再根据窗口本身的宽度和高度计算出窗口的左上角坐标位置. Qt中可以采用两种方法达到窗口的屏幕居中显示: 方法 ...
- python创建画布大小_要绘制图形,首先需要显示画布,并设置画布的大小。其中turtle.setup()函数可以显示画布,并设置画布的大小,及画布在屏幕上的相对位置。_学小易找答案...
[简答题]大脑左半球: [其它]11- 15 [简答题]音乐教育能 [单选题]177. 下列哪种方法不属于机械清蜡方法?( ) [判断题]审美价值的特性--精神性. [单选题]168. 储层改造技术也 ...
最新文章
- 爬虫之谷歌浏览器xpath helper插件的安装和使用
- web前端----JavaScript的DOM(二)
- ThreadPoolExecutor 八种拒绝策略,对的,不是4种!
- 最长子段和 11061008 谢子鸣
- STL 之accumulate,adjacent_difference,inner_product,partial_sum
- Datetime数据类型之datetime2和datetimeoffset数据类型
- “嫌贫爱富”之人,从一顿饭局当中便可看出
- 对创业者来说,创业心学就是一个不断提升自己
- Kubernetes详解(二十五)——Deployment控制器扩容
- c 语言随机生成迷宫,[原创]递归随机迷宫生成算法详解
- 激活Navicat premium12时出现“Rsa public key not find“报错时的解决方法
- 华为推送-华为PUSH SDK Android版接入方法
- puppet插件fact和hiera(puppet自动化系列3)
- 管道、管程、管态的区别
- 浏览器本地缓存:localStorage与sessionStorage
- FPGA图像处理的前景如何?
- vue elementUI 自定义日历内容
- Atomic原子类及原理
- CTF题库—实验吧(密码学)之疑惑的汉字
- FlyMcu下载时的问题