当前位置: 首页 > news >正文

鸿蒙:获取屏幕的刷新率、分辨率、监听截屏或录屏状态等

1、前言

在日常开发过程中,我们有时需要获取用户设备的屏幕信息,便于我们调整不同设备下的UI布局的宽高。我们也可通过display接口监听用户在使用过程中是否截图或录屏。

2、参考文档

https://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-displayhttps://developer.huawei.com/consumer/cn/doc/harmonyos-references/js-apis-display

3、核心思路

根据鸿蒙官方api——display的一些属性来监听设备的屏幕信息或状态。

4、运行效果

5、完整代码

Index.ets

import {display
} from '@kit.ArkUI';@Entry
@ComponentV2
struct Index {@Local value: string = "";display: display.Display | null = null;aboutToAppear(): void {try {this.display = display.getDefaultDisplaySync();} catch (exception) {console.error(`Failed to get default display. Code: ${exception.code}, message: ${exception.message}`);}let callback2: Callback<boolean> = (captureStatus: boolean) => {// 开始截屏或录屏if (captureStatus) {this.value = "截屏或录屏";} else {this.value = "录屏结束";}// captureStatus为true表示显示设备开始截屏、投屏或录屏,false表示结束截屏、投屏或录屏console.info('Listening capture status: ' + captureStatus);};// 开启屏幕截屏、投屏、录屏状态变化的监听display.on('captureStatusChange', callback2);}build() {Column({ space: 20 }) {// 获取屏幕的idText("屏幕Id:" + this.display?.id).fontSize(20).fontWeight(FontWeight.Bold)// 获取屏幕的刷新率Text("屏幕的刷新率:" + this.display?.refreshRate + "Hz").fontSize(20).fontWeight(FontWeight.Bold)// 获取屏幕的分辨率Text("获取屏幕的分辨率:" + this.display?.width + "x" + this.display?.height).fontSize(20).fontWeight(FontWeight.Bold)Text("截屏或录屏状态监听:" + this.value).fontSize(20).fontWeight(FontWeight.Bold)}.justifyContent(FlexAlign.Center).width("100%").height("100%")}
}

觉得有帮助可以点赞或收藏

http://www.dtcms.com/a/427403.html

相关文章:

  • Springboot城市空气质量数据管理系统futcv(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
  • 开发一个网站的费用两学一做11月答题网站
  • 微信小程序入门学习教程,从入门到精通,微信小程序常用API(上)——知识点详解 + 案例实战(4)
  • UNIX下C语言编程与实践14-UNIX 文件系统格式化:磁盘分区与文件系统创建原理
  • UNIX下C语言编程与实践16-UNIX 磁盘空间划分:引导块、超级块、i 节点区、数据区的功能解析
  • 互联网兼职做网站维护做ui设计用什么素材网站
  • ETL参数化技巧:如何避免写一堆重复任务?
  • git下载分支
  • Linux应用开发·Makefile菜鸟教程
  • ai智能化算法
  • 【专业词典】冰山模型
  • 第三方应用测试:【移动应用后端API自动化测试:Postman与Newman的集成】
  • 企业网站备案 淘宝客前端工程师主要做什么
  • 桌面预测类开发,桌面%雷达,信号预测%系统开发,基于python,tk,scikit-learn机器学习算法实现,桌面预支持向量机分类算法,CSV无数据库
  • 网站备案黑名单重庆新闻头条24小时
  • 使用vscode的ssh功能连接远程服务器卡在Setting up SSH Host IP: Downloading VS Code Server的解决方案
  • vscode连接算力平台
  • VSCode中Java开发环境配置的三个层级(Windows版)1-3
  • 西安建设网站的公司网页装修设计
  • 太空算力革命:卫星如何成为地面交通的“天脑“
  • 大数据 Python小说数据分析平台 小说网数据爬取分析系统 Django框架 requests爬虫 Echarts图表 17k小说网 (源码)✅
  • 第 1 天:零基础入门 C 语言 —— 认识 C 语言的起源、特点与应用场景
  • 网站建设制作公司地址网站建设费用明细
  • image process unit 模块实现防抖的原理
  • 【LeetCode 每日一题】2221. 数组的三角和
  • 爬虫之淘宝接口获取:Python 返回淘宝商品详情数据 API 接口
  • 合肥专业网站优化seo在线培训机构排名
  • 便利的聊城网站建设整站网站优化
  • C# 对Bitmap 的一些处理方法,裁剪,压缩,旋转等
  • Labview多个子VI加密码和去密码