是否有一种优雅的方式来暴露子小部件的插槽?

时间:2012-06-14 02:00:41

标签: qt signals-slots

在我的自定义窗口小部件中,有七个标签作为子窗口小部件包含在内。他们的文本和文本格式应由父窗口小部件的用户设置。我创建了14个插槽来完成此任务:

void setCenterText(const QString &text) {
    ui->labelCenter->setText(text);
}

void setRightText(const QString &text);
...

可以通过以下方式完成:connect(parent,slot(a),child,slot(b))和连接到父槽的信号会自动转发到子窗口小部件吗?

1 个答案:

答案 0 :(得分:1)

  

可以通过以下方式完成:connect(parent,slot(a),child,   插槽(b))和连接到父插槽的信号是自动的   转发到子窗口小部件?

您无法将插槽连接到插槽,但更重要的是,如果不在另一个参数中指定目标窗口小部件,则父窗口小部件无法知道哪个子节点需要修改。

虽然你所做的很费力,但它是基于聚合的组件构建的基本内容,它确实提供了优势 - 主要是能够非常精确地调整子程序集属性向程序员公开的内容。