13

在设计器中,当我右键单击一个小部件,然后单击提升以获取此窗口。请参阅下面的屏幕截图。

我从来没有使用过这个功能。基本上,头文件让我感到困惑。它是干什么用的?这是否意味着我可以在这种情况下创建一个新类,继承 QLineEdit 并向它添加更多方法?提升的班级名称是什么?

推广小部件

4

1 回答 1

23

这允许您使用在其他地方定义的自定义小部件,否则设计人员不会知道这些小部件。

例如,如果您定义了一个MyLabel派生自的小部件QLabel,那么您可以在此处定义它,然后只需QLabel在您的 ui 中插入 a 作为占位符并将其提升为MyLabel.

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

from mypackage.mycomponent import MyLabel

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

全局包含被 pyuic 忽略,它只影响uic(生成#include "mypackage/mycomponent.h"#include <mypackage/mycomponent.h>用于 c++)

于 2013-10-27T19:59:20.987 回答