繁体   English   中英

从C ++程序读取gsettings

[英]Reading gsettings from C++ program

我需要以编程方式从C ++程序中的gsettings获取com.ubuntu.user-interface比例因子的值。 有什么优雅的方法可以执行此操作,而不是调用gsettings二进制文件并解析其输出吗?

glibmm中有一个C ++绑定到gsettings。 使用它,可以如下所示从模式读取值。 请注意,我没有可在其上进行测试的Ubuntu系统,因此细节依赖于对文档的简短了解,该文档告诉我scale-factor是不可或缺的价值。 考虑到这一点:

#include <giomm/settings.h>
#include <iostream>

int main() {
  Glib::RefPtr<Gio::Settings> s = Gio::Settings::create("com.ubuntu.user-interface");
  int i = s->get_int("scale-factor");

  std::cout << i << std::endl;
}

另请参阅此处

由于声誉低下,我无法对Wintermute答案发表评论,所以我在这里发表。

像我一样,Newbe可能会<giomm/settings.h>包括<giomm/settings.h>在内的问题(未找到):一种解决方案是在gcc编译命令`pkg-config --cflags --libs glibmm-2.4 giomm-2.4`加上反引号)

如果您的源文件是program.cc ,则可以使用以下命令进行编译:

g++ program.cc -o program `pkg-config --cflags --libs glibmm-2.4 giomm-2.4`

这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM