C

SafeMessage QML 类型

为从 QML 运行时向 QSR 进程发送消息提供消息接口。 更多...

导入语句import Qt.SafeRenderer 2.0

方法

  • void changeItemVisiblity(const QString&id, bool enable)
  • void changeLayout(const QString&layoutId)
  • void moveItem(const QString&itemId, const QPointF&pos)
  • void sendHeartBeat(const int timeout)
  • void setColor(const QString&itemId, const QString&colorStr)
  • void setText(const QString&itemId, const QString&text)

详细说明

方法说明

void changeItemVisiblity(const QString&id, bool enable)

在 Qt Safe Renderer 运行时隐藏或显示项的可见性。id 是 QML 项的 ID。 enable 为 true 时显示项,为 false 时隐藏项。


void changeLayout(const QString&layoutId)

在 Qt Safe Renderer 运行时更改布局。 layoutId 是布局的 ID。布局 ID 必须在 Qt Safe Renderer 运行时相应设置。

您可以像以下这样从 Qt Quick 运行时向 QSR 发送 changeLayout 事件

onStateChanged: {
    if (state == "sports")
        SafeMessage.changeLayout("sport")
    else
        SafeMessage.changeLayout("hybrid")
}

layoutId 的值必须与 Telltales 示例中 main.cpp 中的布局 ID 匹配

static QSafeLayoutResourceReader layoutHybrid("/qtcluster/layoutData/DashboardForm.ui.srl");
const quint32 layoutHybridID = qsafe_hash("hybrid", safe_strlen("hybrid"));
const quint32 layoutSportID = qsafe_hash("sport", safe_strlen("sport"));
layoutHybrid.setLayoutId(layoutHybridID);
static QSafeLayoutResourceReader layoutSport("/qtcluster/layoutData/DashboardSportForm.ui.srl");
layoutSport.setLayoutId(layoutSportID);

void moveItem(const QString&itemId, const QPointF&pos)

在 Qt Safe Renderer 运行时更改项的位置。itemId 是 QML 项的 ID。pos 是新位置。


void sendHeartBeat(const int timeout)

向 Qt Safe Renderer 进程发送心跳消息。timeout 是 Qt Safe Renderer 进程下一次等待心跳消息的时间值。


void setColor(const QString&itemId, const QString&colorStr)

SafeTextitemId 的文本颜色设置为 colorStr。颜色以以下格式之一中的 RGB 值设置

  • #RGB(R、G 和 B 均为单个十六进制数字)
  • #RRGGBB
  • #AARRGGBB
  • #RRRGGGBBB
  • #RRRRGGGGBBBB
  • 来自万维网联盟定义的扩展颜色关键字列表的名称;例如,“steelblue”或“gainsboro”。这些颜色名称在所有平台上都生效。请注意,这些颜色名称与由 Qt.GlobalColor 枚举定义的不同,例如,“green”和 Qt::green 不指代相同的颜色。
  • transparent - 表示没有颜色。

如果 colorStr 无法解析,则文本颜色无效。


void setText(const QString&itemId, const QString&text)

在 Qt 安全渲染器运行时将 itemId 指定的 SateText 项目的文本设置为 text


适用于某些 Qt 许可证。
了解更多信息。