您可以使用dbus与定时守护程序进行交互https://www.freedesktop.org/wiki/Software/systemd/timedated/

设置时间和日期。

Qt提供了一种从xml http://doc.qt.io/qt-5/qdbusxml2cpp.html生成接口代码的方法 。您可以通过内省获得xml。

我不喜欢生成的代码格式,所以我自己编写了接口代码

H:

#ifndef TIMEDATE1SERVICE_H

#define TIMEDATE1SERVICE_H

#include

#include

#include

#include

class Timedate1Interface: public QDBusAbstractInterface

{

Q_OBJECT

Q_PROPERTY(bool CanNTP READ CanNTP)

Q_PROPERTY(bool LocalRTC READ LocalRTC)

Q_PROPERTY(bool NTP READ NTP)

Q_PROPERTY(bool NTPSynchronized READ NTPSynchronized)

Q_PROPERTY(qulonglong RTCTimeUSec READ RTCTimeUSec)

Q_PROPERTY(qulonglong TimeUSec READ TimeUSec)

Q_PROPERTY(QString Timezone READ Timezone)

public:

explicit Timedate1Interface(QObject *parent = nullptr);

bool CanNTP() const;

bool LocalRTC() const;

bool NTP() const;

bool NTPSynchronized() const;

qulonglong RTCTimeUSec() const;

qulonglong TimeUSec() const;

QString Timezone() const;

void SetLocalRTC(bool localRTC, bool fixSystem, bool userInteraction);

void SetNTP(bool useNTP, bool userInteraction);

void SetTime(qlonglong usecUTC, bool relative, bool userInteraction);

void SetTimezone(const QString &timezone, bool userInteraction);

};

#endif // TIMEDATE1SERVICE_H

cpp:

#include "timedate1service.h"

Timedate1Interface::Timedate1Interface(QObject *parent)

: QDBusAbstractInterface("org.freedesktop.timedate1", "/org/freedesktop/timedate1",

"org.freedesktop.timedate1", QDBusConnection::systemBus(), parent)

{

}

bool Timedate1Interface::CanNTP() const

{

return qvariant_cast(property("CanNTP"));

}

bool Timedate1Interface::LocalRTC() const

{

return qvariant_cast(property("LocalRTC"));

}

bool Timedate1Interface::NTP() const

{

return qvariant_cast(property("NTP"));

}

bool Timedate1Interface::NTPSynchronized() const

{

return qvariant_cast(property("NTPSynchronized"));

}

qulonglong Timedate1Interface::RTCTimeUSec() const

{

return qvariant_cast(property("RTCTimeUSec"));

}

qulonglong Timedate1Interface::TimeUSec() const

{

return qvariant_cast(property("TimeUSec"));

}

QString Timedate1Interface::Timezone() const

{

return qvariant_cast(property("Timezone"));

}

void Timedate1Interface::SetLocalRTC(bool localRTC, bool fixSystem, bool userInteraction)

{

call("SetLocalRTC", localRTC, fixSystem, userInteraction);

}

void Timedate1Interface::SetNTP(bool useNTP, bool userInteraction)

{

call("SetNTP", useNTP, userInteraction);

}

void Timedate1Interface::SetTime(qlonglong usecUTC, bool relative, bool userInteraction)

{

call("SetTime", usecUTC, relative , userInteraction);

}

void Timedate1Interface::SetTimezone(const QString &timezone, bool userInteraction)

{

call("SetTimezone", timezone, userInteraction);

}

qt linux 修改系统时间,在Linux上使用QT设置系统时钟相关推荐

  1. linux修改用户名报错,Linux 用户切换、修改用户名、修改密码

    一.用户切换 "$":普通用户提示符 "#":root用户提示符 1.普通用户到root: 方式一:命令:su然后输入root密码 此种方式只是切换了root身 ...

  2. oracle linux查看时区,linux修改系统时间和linux查看时区、修改时区的方法

    一.查看和修改Linux的时区 1. 查看当前时区 命令 : "date -R" 2. 修改设置Linux服务器时区 方法 A 命令 : "tzselect" ...

  3. linux系统查看当前时区,linux修改系统时间和linux查看时区、修改时区的方法

    一.查看和修改Linux的时区 1. 查看当前时区 命令 : "date -R" 2. 修改设置Linux服务器时区 方法 A 命令 : "tzselect" ...

  4. linux 时区获取时间,【linux】linux修改系统时间和linux查看时区、修改时区的方法...

    一.查看和修改Linux的时区 1. 查看当前时区 命令 : "date -R" 2. 修改设置Linux服务器时区 方法 A 命令 : "tzselect" ...

  5. Linux 修改BIOS时间匹配系统时间

    查看系统时间 在这里我将介绍如何在Linux中设置时间. 通常情况下,我们设置时间,重新启动,它再次被弄乱了. 这是因为BIOS的时间不同,Linux会同步到那个. date 这将显示系统时间,这正是 ...

  6. linux系统时间代表,Linux上有两种时间,一种是硬件时间,一种是系统时间

    date 系统时间 clock/hwclock  硬件时钟 cal  日历 date 打印或设置系统日期或时间,以给定格式显示或设置系统时间 +%a显示周 +%A          完整显示周 +%b ...

  7. linux 修改微秒时间,Linux系统下精确到微秒级的时间操作函数

    Linux下对时间进行运算,如果是到秒级的,相信大家都用过time之类的函数实现了,但要更精确些呢?到毫秒.微秒级呢?本文引用地址:http://www.eepw.com.cn/article/201 ...

  8. linux获得系统时间 c,linux c 获取系统时间

    #include main() { time_t timep; time (&timep); printf("%s",asctime(gmtime(&timep)) ...

  9. linux修改服务器时间_操作系统基础解析:Windows和Linux 到底有何不同?

    出品丨自主可控新鲜事 内容节选自东方证券 正文共2520字,建议阅读时间8分钟 计算机操作系统是基础软件,分为闭源和开源两类. 广义的操作系统包括:计算机(PC.工作站.服务器)系统.移动端系统(例如 ...

最新文章

  1. 聚焦触宝反侵权事件:中国创业者用什么护航海外市场大门
  2. 2010年南非世界杯乌拉圭和韩国八强赛观后感
  3. rf调用的python函数报错_Robot Framework(15)- 扩展关键字
  4. 采样频率、采样点数、频率分辨率
  5. BurpSuite 安装配置(License Key)
  6. 大学生英语跨文化交际阅读课程 Unit6 Text A
  7. WinSCP(SFTP客户端) v5.13.3中文版
  8. 软件测试的正向思维,反向思维
  9. Redis 乱码解决与思考
  10. SpringBoot下载Excel文件,解决文件损坏问题
  11. 计算机b级考试题型分值分布,大学英语四级考试题型和分值分配
  12. GDPR全文翻译(一)
  13. 2.3.1-4. IEEE 754 标准
  14. Python实现词云生日祝福图片,快拿去给心爱的人送上祝福
  15. 领域驱动设计——柔性设计
  16. 2019第十六届研究生数学建模竞赛--跨越五年从本科省二到研赛国一
  17. 更新公告/unc0ver 4.2.1版发布
  18. Discuz仿传奇MA游戏官网社区论坛模板源码
  19. 微信小程序(.wxapkg)源码包解包的方法
  20. 信息论与编码matlab实验报告,信息论实验报告(实验三、香农编码)

热门文章

  1. Gazebo機器人仿真學習探索筆記(二)基本使用說明
  2. linux 卸载模块命令,linux卸载内核模块命令是什么
  3. 设置pin码,解锁pin后,还会出现一次pin码界面,然后进入桌面
  4. android自定义横线,Android实现自带横线的EditText
  5. 【12.30~1.4周报】我当导演啦
  6. 无限层级拉新,数据建立和数据分析 php
  7. 具有网状神经系统的动物,动物学网状神经系统图
  8. 唯品会接口获取商品详情数据
  9. X1 2020版评测
  10. Windows c++ 读写注册表