Qt:如何将类连接到自定义 Qt 设计器小部件
Posted
技术标签:
【中文标题】Qt:如何将类连接到自定义 Qt 设计器小部件【英文标题】:Qt: How to connect class to custom Qt Designer Widget 【发布时间】:2011-10-16 17:23:29 【问题描述】:也许我的想法完全错了……
我在 Qt Creator 中创建了一个带有 Designer 文件的新小部件(我选择了 Widget 模板,它为我的自定义小部件类生成了一个源文件和头文件,以及一个设计器文件)。
然后我使用 Designer 设计了小部件。我现在可以创建这个小部件的实例,它会显示在我的应用程序中。
但它并不是非常有用,因为我不知道如何在运行时自定义小部件。
假设我在小部件中只有一个标签和一个按钮。在运行时,如何更改此标签的文本?我不知道如何将设计师的东西与我的实际课程联系起来,也找不到任何关于如何做到这一点的文档。我错过了什么吗?
谢谢!
【问题讨论】:
【参考方案1】:一些事情:
在设计器中,您的每个小部件(在您的情况下为 QPushButton 和 QLabel)都有分配给它的名称。此名称是您可以在 C++ 中用于引用该小部件并在其上调用函数的变量的名称。
根据您的自定义小部件的实现方式,您将能够使用以下两种方法之一来引用这些变量:
如果您的类继承自 Ui::MyCustomwidget,那么您的变量只是您的类的成员变量,可以随时访问 (myLabel->setText())
如果您有一个成员变量(通常命名为 ui,类型为 Ui::MyCustomWidget),那么您可以使用 ui 对象 (ui->myLabel->setText()) 访问您的小部件
【讨论】:
以上是关于Qt:如何将类连接到自定义 Qt 设计器小部件的主要内容,如果未能解决你的问题,请参考以下文章
如何让 qt 设计器自定义 QOpenGLWidget 小部件背景透明?