Qt:如何将类连接到自定义Qt设计器小部件

Qt:如何将类连接到自定义Qt设计器小部件,qt,qwidget,qt-designer,Qt,Qwidget,Qt Designer,也许我认为这是完全错误的 我在Qt Creator中创建了一个带有设计器文件的新小部件(我选择了小部件模板,它为我的自定义小部件类生成了一个源文件和头文件,还有一个设计器文件) 然后,我与设计师一起设计了小部件。我现在可以创建这个小部件的实例,它将显示在我的应用程序中 但它并不是非常有用,因为我不知道如何在运行时定制小部件 假设我在这个小部件中只有一个标签和一个按钮。在运行时,如何更改此标签的文本?我不知道如何将设计器的东西连接到我的实际类,也找不到任何关于如何实现这一点的文档。我错过什么了吗

也许我认为这是完全错误的

我在Qt Creator中创建了一个带有设计器文件的新小部件(我选择了小部件模板,它为我的自定义小部件类生成了一个源文件和头文件,还有一个设计器文件)

然后,我与设计师一起设计了小部件。我现在可以创建这个小部件的实例,它将显示在我的应用程序中

但它并不是非常有用,因为我不知道如何在运行时定制小部件

假设我在这个小部件中只有一个标签和一个按钮。在运行时,如何更改此标签的文本?我不知道如何将设计器的东西连接到我的实际类,也找不到任何关于如何实现这一点的文档。我错过什么了吗

谢谢

有几件事:

  • 在designer中,每个小部件(QPushButton和本例中的QLabel)都有一个名称。这个名字是您可以在C++中引用它上的小部件和调用函数的变量的名称。

  • 根据自定义小部件的实现方式,您可以使用以下两种方法之一引用这些变量:

    • 如果您的类继承自Ui::MyCustomwidget,那么您的变量只是类的成员变量,可以随时访问(myLabel->setText()

    • 如果您有一个成员变量(通常命名为ui,类型为ui::MyCustomWidget),那么您可以使用ui对象(ui->myLabel->setText())访问您的小部件

    • 有几件事:

      • 在designer中,每个小部件(QPushButton和本例中的QLabel)都有一个名称。这个名字是您可以在C++中引用它上的小部件和调用函数的变量的名称。

      • 根据自定义小部件的实现方式,您可以使用以下两种方法之一引用这些变量:

        • 如果您的类继承自Ui::MyCustomwidget,那么您的变量只是类的成员变量,可以随时访问(myLabel->setText()

        • 如果您有一个成员变量(通常命名为ui,类型为ui::MyCustomWidget),那么您可以使用ui对象(ui->myLabel->setText())访问您的小部件