QML ValueAxis无法找到改变标签颜色的方法

时间:2016-07-07 12:43:47

标签: qml qtchart

在ValueAxis documentation中,我似乎无法找到一个属性来更改标题的颜色,默认情况下为黑色。我想把它改成白色。

3 个答案:

答案 0 :(得分:1)

事实证明,即使文档中没有,您也可以直接在 QML 中将轴的 titleBrush 设置为颜色。与其他答案不同,这允许我动态地进行,颜色不一定是硬编码的字符串 这就是我对 x 轴的处理方式:

DateTimeAxis
{
    id: timeAxis
    format: "hh:mm:ss"
    color: "white"
    labelsColor: color
    gridLineColor: color
    minorGridLineColor: color
    titleBrush: color
}

答案 1 :(得分:0)

设置轴标题时可以使用html格式。

titleText: "<font color='white'>YourTitle</font>"

答案 2 :(得分:0)

在C ++中创建一个函数,您可以通过将其标记为Q_INVOKABLE来调用QML,如下所示:

在您的标头文件中:

public:
    Q_INVOKABLE QBrush titleBrush() const;

在您的班级文件中:

QBrush ChartStyler::titleBrush() const
{
    return QBrush(Qt::white);
}

然后你可以在你的QML中调用它:

import MyCoolProgram.ChartStyler 1.0

ChartStyler {
    id: chartStyler
    ...
    ValueAxis {
        titleText: "My X Axis"
        titleBrush: chartStyler.titleBrush()
    }
    ...
}

如果您还没有可以通过QML访问的课程,则需要注册ChartStyler(例如main.cpp

 qmlRegisterType<ChartStyler>("MyCoolProgram.ChartStyler", 1, 0, "ChartStyler");