在设计器中,当我右键单击一个小部件时,我点击提升,我得到这个窗口。请参见下面的屏幕截图。
我从未使用过此功能。基本上,头文件让我很困惑。它是为了什么?这是否意味着我可以在这种情况下创建一个新类,继承QLineEdit并为其添加更多方法?推广的班级名称是什么?
答案 0 :(得分:16)
这允许您使用其他地方定义的自定义小部件,而设计者则不知道这些小部件。
例如,如果您定义了从MyLabel
派生的小部件QLabel
,那么您可以在此处定义它,然后只需在您的ui中插入QLabel
作为占位符并进行推广到MyLabel
。
然后,uic编译器将包含必要的导入/包含,例如,如果您将mypackage/mycomponent.h
指定为头文件而MyLabel
指定为类名,那么pyuic
将添加
from mypackage.mycomponent import MyLabel
(注意如何忽略.h
,并通过pyuic将斜杠转换为.
以保持与python的兼容性)
全局包含,它只会影响uic
(为c ++生成#include "mypackage/mycomponent.h"
或#include <mypackage/mycomponent.h>