PySide6.QtWidgets.QMdiSubWindow¶
- class QMdiSubWindow¶
QMdiSubWindow
类为QMdiArea
提供了一个子窗口类。更多…概要¶
属性¶
keyboardPageStepᅟ
- 设置在使用键盘页面键时,小部件应移动或调整大小的距离keyboardSingleStepᅟ
- 设置在使用键盘箭头键时,小部件应移动或调整大小的距离
方法¶
def
__init__()
def
isShaded()
def
mdiArea()
def
setOption()
def
setSystemMenu()
def
setWidget()
def
systemMenu()
def
testOption()
def
widget()
插槽¶
def
showShaded()
def
showSystemMenu()
信号¶
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
QMdiSubWindow
表示在QMdiArea
中的一个顶层窗口,它由一个带有窗口装饰的标题栏、一个内部小部件以及(取决于当前样式)一个窗口框架和一个大小调整手柄组成。QMdiSubWindow
有自己的布局,该布局由标题栏和用于内部小部件的中心区域组成。构造
QMdiSubWindow
的最常见方法是使用内部小部件作为参数调用addSubWindow()
。你也可以自己创建一个子窗口,并通过调用setWidget()
来设置内部小部件。在使用子窗口编程时,您使用的API与常规顶层窗口相同(例如,您可以调用诸如
show()
、hide()
、showMaximized()
和setWindowTitle()
等函数)。子窗口处理¶
QMdiSubWindow
还支持在MDI区域中子窗口的特定行为。默认情况下,每个
QMdiSubWindow
在MDI区域视口中移动时都是可见的,但也可以指定透明的窗口移动和调整大小行为,在这些操作期间只更新子窗口的轮廓。setOption()
函数用于启用此行为。isShaded()
函数检测子窗口当前是否处于阴影状态(即窗口被折叠,只有标题栏可见)。要进入阴影模式,请调用showShaded()
。QMdiSubWindow
在窗口状态发生变化时(例如,当窗口最小化或恢复时)会发出windowStateChanged()
信号。它还会在激活之前发出aboutToActivate()
。在键盘交互模式下,窗口可以通过键盘进行移动和调整大小。您可以通过窗口的系统菜单进入此模式。
keyboardSingleStep
和keyboardPageStep
属性控制每次按键事件时小部件移动或调整大小的距离。当按下shift键时,使用页面步长;否则使用单步长。你也可以用键盘来改变活动窗口。同时按下控制和Tab键,下一个(使用当前的
WindowOrder
)子窗口将被激活。按下控制、Shift和Tab键,你将激活前一个窗口。这相当于调用activateNextSubWindow()
和activatePreviousSubWindow()
。请注意,这些快捷键会覆盖全局快捷键,但不会覆盖QMdiArea
的快捷键。另请参阅
- class SubWindowOption¶
(继承自
enum.Flag
) 此枚举描述了自定义QMdiSubWindow
行为的选项。常量
描述
QMdiSubWindow.RubberBandResize
如果启用此选项,将使用橡皮筋控件来表示子窗口的轮廓,用户调整的是这个轮廓而不是子窗口本身的大小。因此,子窗口在调整大小操作完成之前保持其原始位置和大小,此时它将接收一个QResizeEvent。默认情况下,此选项是禁用的。
QMdiSubWindow.RubberBandMove
如果启用此选项,将使用橡皮筋控件来表示子窗口的轮廓,用户移动的是这个轮廓而不是子窗口本身。因此,子窗口在移动操作完成之前保持在其原始位置,此时会向窗口发送一个QMoveEvent。默认情况下,此选项是禁用的。
注意
当使用
from __feature__ import true_property
时,属性可以直接使用,否则通过访问器函数使用。- property keyboardPageStepᅟ: int¶
此属性设置在使用键盘页面键时,小部件应移动或调整大小的距离。
在键盘交互模式下,您可以使用箭头键和页面键来移动或调整窗口大小。此属性控制页面键。进入键盘交互模式的常见方法是进入子窗口菜单,然后选择“调整大小”或“移动”。
默认的键盘页面步长值为20像素。
另请参阅
- Access functions:
- property keyboardSingleStepᅟ: int¶
此属性设置在使用键盘箭头键时,小部件应移动或调整大小的距离。
在键盘交互模式下,您可以使用箭头键和页面键来移动或调整窗口大小。此属性控制箭头键。进入键盘交互模式的常见方法是进入子窗口菜单,然后选择“调整大小”或“移动”。
默认键盘单步值为5像素。
另请参阅
- Access functions:
- __init__([parent=None[, flags=Qt.WindowFlags()]])¶
- Parameters:
parent –
QWidget
flags –
WindowType
的组合
构造一个新的
QMdiSubWindow
小部件。parent
和flags
参数被传递给QWidget
的构造函数。除了使用addSubWindow(),在将子窗口添加到
QMdiArea
时,也可以简单地使用setParent()
。请注意,只有
QMdiSubWindow
可以被设置为QMdiArea
的子窗口;例如,你不能这样写://bad code QMdiArea mdiArea; QTextEdit editor(&mdiArea); // invalid child widget
另请参阅
- aboutToActivate()¶
QMdiSubWindow
在它被激活之前立即发出这个信号。在子窗口被激活后,管理子窗口的QMdiArea
也会发出subWindowActivated()
信号。另请参阅
- isShaded()¶
- Return type:
布尔
如果此窗口被阴影覆盖,则返回
true
;否则返回false
。如果窗口被折叠,只显示标题栏,则该窗口是阴影的。
- keyboardPageStep()¶
- Return type:
整数
属性
keyboardPageStepᅟ
的获取器。- keyboardSingleStep()¶
- Return type:
整数
属性
keyboardSingleStepᅟ
的获取器。返回包含此子窗口的区域,如果没有则返回
None
。另请参阅
- setKeyboardPageStep(step)¶
- Parameters:
step – 整数
另请参阅
属性
keyboardPageStepᅟ
的设置器。- setKeyboardSingleStep(step)¶
- Parameters:
step – 整数
另请参阅
属性
keyboardSingleStepᅟ
的设置器。- setOption(option[, on=true])¶
- Parameters:
选项 –
SubWindowOption
on – 布尔值
如果
on
为真,option
将在子窗口上启用;否则将被禁用。有关每个选项的效果,请参见SubWindowOption
。将
systemMenu
设置为当前子窗口的系统菜单。默认情况下,每个
QMdiSubWindow
都有一个标准的系统菜单。由
QMdiSubWindow
创建的系统菜单的QActions将根据当前窗口状态自动更新;例如,窗口最小化后,最小化操作将被禁用。用户添加的QActions不会被
QMdiSubWindow
更新。QMdiSubWindow
拥有systemMenu
的所有权;你不需要删除它。任何现有的菜单将被删除。将
widget
设置为此子窗口的内部小部件。内部小部件显示在子窗口标题栏下方的中心位置。QMdiSubWindow
临时拥有widget
;您不需要删除它。任何现有的内部小部件将被移除并重新设置为根窗口。另请参阅
- showShaded()¶
调用此函数将使子窗口进入阴影模式。当子窗口被阴影化时,只有标题栏可见。
尽管并非所有样式都支持阴影效果,此函数仍会将子窗口显示为阴影状态,无论是否支持阴影效果。然而,当与不支持阴影效果的样式一起使用时,用户将无法通过用户界面(例如,通过标题栏中的阴影按钮)从阴影模式返回。
另请参阅
- showSystemMenu()¶
在标题栏中的系统菜单图标下方显示系统菜单。
返回指向当前系统菜单的指针,如果未设置系统菜单,则返回零。
QMdiSubWindow
提供了一个默认的系统菜单,但你也可以使用setSystemMenu()
来设置菜单。- testOption(option)¶
- Parameters:
选项 –
SubWindowOption
- Return type:
布尔
如果
option
已启用,则返回true
;否则返回false
。返回当前内部小部件。
另请参阅
- windowStateChanged(oldState, newState)¶
- Parameters:
oldState –
WindowState
的组合newState –
WindowState
的组合
QMdiSubWindow
在窗口状态改变后发出此信号。oldState
是改变前的窗口状态,newState
是新的当前状态。