我开发了一个使用 qscintilla 作为文本编辑器的应用程序。我还实现了自定义词法分析器以突出显示特定于语言的关键字。到目前为止,突出显示的关键字的样式在我的应用程序中是硬编码的,并且在 Windows/Linux(Ubuntu)/Mac 上的默认主题中看起来相当不错。
当用户选择深色主题(在 Linux 上)时会出现问题。根据 QScintilla 版本,编辑器的某些部分会反映当前的主题颜色,而其他部分则不会。此外,我的自定义样式在深灰色背景上呈现深蓝色字母。
我正在寻找一些 Qt 类,它可以让我访问当前的系统主题。我不想为我的应用程序小部件定义样式。我想知道什么是系统默认的非比例字体,它的大小、颜色是多少……如果我知道使用了深色方案,我会选择互补色来突出显示关键字。
我检查了 QStyle、QPlatformTheme 和其他 qt 类的文档,在我看来,这些更多地用于定义新样式,然后用于描述当前样式。