如何在pyqt4中的Qt Designer中使用promote?

时间:2013-10-27 18:51:07

标签: python qt pyqt4 designer

在设计器中,当我右键单击一个小部件时,我点击提升,我得到这个窗口。请参见下面的屏幕截图。

我从未使用过此功能。基本上,头文件让我很困惑。它是为了什么?这是否意味着我可以在这种情况下创建一个新类,继承QLineEdit并为其添加更多方法?推广的班级名称是什么?

Promote widget

1 个答案:

答案 0 :(得分:16)

这允许您使用其他地方定义的自定义小部件,而设计者则不知道这些小部件。

例如,如果您定义了从MyLabel派生的小部件QLabel,那么您可以在此处定义它,然后只需在您的ui中插入QLabel作为占位符并进行推广到MyLabel

然后,uic编译器将包含必要的导入/包含,例如,如果您将mypackage/mycomponent.h指定为头文件而MyLabel指定为类名,那么pyuic将添加

from mypackage.mycomponent import MyLabel

(注意如何忽略.h,并通过pyuic将斜杠转换为.以保持与python的兼容性)

pyuic会忽略

全局包含,它只会影响uic(为c ++生成#include "mypackage/mycomponent.h"#include <mypackage/mycomponent.h>