- class QFocusFrame#
QFocusFrame
小部件提供一个焦点框架,该框架可以位于小部件的正常绘制区域之外。更多…概述#
方法#
def
__init__()
def
setWidget()
def
widget()
虚函数#
def
initStyleOption()
注意
本文档可能包含自动从 C++ 转换为 Python 的代码段。我们始终欢迎对代码段翻译的贡献。如果您发现翻译有问题,您可以创建在 https:/bugreports.qt.io/projects/PYSIDE 上的问题票来通知我们。
详细描述#
通常情况下,应用程序不需要创建自己的
QFocusFrame
,因为QStyle
会为您处理这些细节。样式作者可以选择使用QFocusFrame
来在外部绘制图形边界区域内设置焦点区域。通过这种方式,不需要为具有焦点的控件预留空间,只需在对QWidget
调用setWidget
的控件进行设置。然而,您在自己的自定义控件中创建QFocusFrame
并通过setGeometry
手动设置其几何形状是合法的,但是当焦点控件改变大小或位置时,您将无法得到自动放置。构造一个
QFocusFrame
。焦点框架不会监控
parent
的更新,而是可以通过手动放置或使用setWidget
进行放置。一个QFocusFrame
设置 Qt::WA_NoChildEventsForParent 属性;因此父控件不会收到 QEvent::ChildAdded 事件,这将使得在QSplitter
或其他子事件监控控件内部手动设置QFocusFrame
的几何形状变得可能。另请参阅
- initStyleOption(option)#
- 参数:
option –
QStyleOption
使用该
QFocusFrame
的值来初始化option
。此方法对于子类非常有用,当它们需要一个QStyleOption
而不想自行填充所有信息时。另请参阅
QFocusFrame
将跟踪widget
的变化并自动调整大小。如果监视的 widget 的父对象发生变化,QFocusFrame
将跟随 widget 并自动将其放置在 widget 附近。如果监视的 widget 被删除,QFocusFrame
将将其设置为 0。另请参阅
返回当前用于自动调整大小和更新的监视 widget。
另请参阅