【QML】Qt和QML获取操作系统类型

1. Qt获取系统类型

c 复制代码
//方法
QSysInfo::productType()

//举例:
if(QSysInfo::productType() == "windows")
{
	qDebug() << "windows system";
}

官方说明:

c 复制代码
[static] QString QSysInfo::productType()
Returns the product name of the operating system this application is running in. If the application is running on some sort of emulation or virtualization layer (such as WINE on a Unix system), this function will inspect the emulation / virtualization layer.
Values returned by this function are stable and will not change over time, so applications can rely on the returned value as an identifier, except that new OS types may be added over time.
Linux and Android note: this function returns "android" for Linux systems running Android userspace, notably when using the Bionic library. For all other Linux systems, regardless of C library being used, it tries to determine the distribution name and returns that. If determining the distribution name failed, it returns "unknown".
macOS note: this function returns "osx" for all macOS systems, regardless of Apple naming convention. The returned string will be updated for Qt 6. Note that this function erroneously returned "macos" for macOS 10.12 in Qt versions 5.6.2, 5.7.1, and 5.8.0.
Darwin, iOS, tvOS, and watchOS note: this function returns "ios" for iOS systems, "tvos" for tvOS systems, "watchos" for watchOS systems, and "darwin" in case the system could not be determined.
FreeBSD note: this function returns "debian" for Debian/kFreeBSD and "unknown" otherwise.
Windows note: this function "winrt" for WinRT builds, and "windows" for normal desktop builds.
For other Unix-type systems, this function usually returns "unknown".
This function was introduced in Qt 5.4.
See also QFileSelector, kernelType(), kernelVersion(), productVersion(), and prettyProductName().

2. QML获取系统类型

c 复制代码
//方法
Qt.platform.os

//举例
if(Qt.platform.os === "windows"){
            console.log("windows system")
        }else if(Qt.platform.os === "linux"){
            console.log("linux system")
        }

官方说明:

c 复制代码
platform : object

The platform object provides info about the underlying platform.
Its properties are:

platform.os
This read-only property contains the name of the operating system.
Possible values are:
	"android" - Android
	"ios" - iOS
	"tvos" - tvOS
	"linux" - Linux
	"osx" - macOS
	"qnx" - QNX (since Qt 5.9.3)
	"unix" - Other Unix-based OS
	"windows" - Windows
	"winrt" - WinRT / UWP
	"wasm" - WebAssembly
platform.pluginName
This is the name of the platform set on the QGuiApplication instance as returned by QGuiApplication::platformName()

This property was introduced in Qt 5.1.
相关推荐
rylshe131433 分钟前
在scala中sparkSQL连接mysql并添加新数据
开发语言·mysql·scala
小宋加油啊33 分钟前
Mac QT水平布局和垂直布局
开发语言·qt·macos
MyhEhud1 小时前
kotlin @JvmStatic注解的作用和使用场景
开发语言·python·kotlin
想睡hhh1 小时前
c++进阶——哈希表的实现
开发语言·数据结构·c++·散列表·哈希
Clown951 小时前
Go语言爬虫系列教程(一) 爬虫基础入门
开发语言·爬虫·golang
Watermelo6171 小时前
前端如何应对精确数字运算?用BigNumber.js解决JavaScript原生Number类型在处理大数或高精度计算时的局限性
开发语言·前端·javascript·vue.js·前端框架·vue·es6
Aric_Jones3 小时前
lua入门语法,包含安装,注释,变量,循环等
java·开发语言·git·elasticsearch·junit·lua
Akiiiira3 小时前
【日撸 Java 三百行】Day 12(顺序表(二))
java·开发语言
EndingCoder3 小时前
2025年JavaScript性能优化全攻略
开发语言·javascript·性能优化
码上淘金8 小时前
【Python】Python常用控制结构详解:条件判断、遍历与循环控制
开发语言·python