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

qml中的一些常用技巧

1.判断操作系统

直接使用Qt.platform.os就可以,这是一个只读的属性,可以直接获取当前的操作系统,取值如下:

"android" - Android
"ios" - iOS
"tvos" - tvOS
"linux" - Linux
"osx" - macOS
"qnx" - QNX (since Qt 5.9.3)
"unix" - Other Unix-based OS
"windows" - Windows
"wasm" - WebAssembly
 

2.获取可执行文件路径

笔者不建议在qml中获取,若需要,可以使用如下方法

        var exePath = Qt.application.arguments[0];
        if (Qt.platform.os === "windows" || Qt.platform.os==="winrt") {
            var appPath = exePath.substring(0,exePath.lastIndexOf('\\'))
            console.log("====================",appPath)
        }else{
            appPath = exePath.substring(0,exePath.lastIndexOf('/'))
            console.log("====================",appPath)
        }

说白了,就是从运行命令中获取的,不同操作系统下还有差异
 

3.序列化时间字符串

为了获取如yyyy-MM-dd格式的时间字符串,有不少小伙伴采用的是使用js一点点拼出来的,但qml中有Qt.formatDate()或Qt.formatDateTime()可以直接做到

4.md5

若是可以,笔者也不建议使用md5了,字典破解太多了。在qml中,可以直接使用Qt.md5()来得到对应字符串

5.使用默认程序打开对应文件

直接使用Qt.openUrlExternally()就可以,可以根据返回值判断调用成功与否

相关文章:

  • 红黑树,B树、B+树、MySQL索引面试题
  • 基于Vue+Element-ui开发的一个“月日组件”,并发布npm包
  • gRPC RPC技术demo
  • 记录一下ts学习整理的一些知识点
  • java计算机毕业设计基于安卓Android的急救服务APP
  • MyBatis Plus (四) --------- 条件构造器 EntityWrapper
  • 神经网络算法应用案例,神经网络是机器算法吗
  • 2023中国(江西)国际餐饮品牌连锁加盟展览会2月26日开幕
  • Java ServiceLoader、Spring SpringFactoriesLoader、SPI方式解耦第三方组件
  • 聚焦个性化与场景化,全新升级的三星电视看点何在?
  • LeetCode每日一题JAVA、JavaSrcipt题解——2022.08.21-08.31
  • 哪种神经网络最好使用,哪种神经网络最好用
  • 02- Spring IOC与DI
  • 基于jeecgboot流程管理平台的自定义业务表单集成方法
  • 矩阵类问题处理技巧
  • php的引用
  • -------------------- 第二讲-------- 第一节------在此给出链表的基本操作
  • 《深入 React 技术栈》
  • 78. Subsets
  • Android单元测试 - 几个重要问题
  • Angular 响应式表单 基础例子
  • css布局,左右固定中间自适应实现
  • JAVA之继承和多态
  • java中具有继承关系的类及其对象初始化顺序
  • Laravel 中的一个后期静态绑定
  • LeetCode541. Reverse String II -- 按步长反转字符串
  • LeetCode算法系列_0891_子序列宽度之和
  • Objective-C 中关联引用的概念
  • PHP 7 修改了什么呢 -- 2
  • React-Native - 收藏集 - 掘金
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • 成为一名优秀的Developer的书单
  • 纯 javascript 半自动式下滑一定高度,导航栏固定
  • 从地狱到天堂,Node 回调向 async/await 转变
  • 三分钟教你同步 Visual Studio Code 设置
  • 优秀架构师必须掌握的架构思维
  • [地铁译]使用SSD缓存应用数据——Moneta项目: 低成本优化的下一代EVCache ...
  • 继 XDL 之后,阿里妈妈开源大规模分布式图表征学习框架 Euler ...
  • ​ssh免密码登录设置及问题总结
  • (2)(2.10) LTM telemetry
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (原創) 如何優化ThinkPad X61開機速度? (NB) (ThinkPad) (X61) (OS) (Windows)
  • (原創) 未来三学期想要修的课 (日記)
  • (转)linux下的时间函数使用
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • ..回顾17,展望18
  • .jks文件(JAVA KeyStore)
  • .Net IOC框架入门之一 Unity
  • .Net MVC + EF搭建学生管理系统
  • .NET企业级应用架构设计系列之结尾篇
  • .NET轻量级ORM组件Dapper葵花宝典
  • @JsonFormat与@DateTimeFormat注解的使用
  • [ 第一章] JavaScript 简史
  • [go] 策略模式
  • [i.MX]飞思卡尔IMX6处理器的GPIO-IOMUX_PAD说明