pyqt5-QWidget窗口
1、窗口、窗口标题和窗标
(1)window
- 返回当前组件的窗口对象,如果本身就是窗口,则返回本身对象
- 比如QMainWindow对象调用该对象,返回类型即QMainWindow
(2)setWindowTitle
- 设置窗口标题,参数为str类型
(3)windowTitle
- 获取窗口标题,返回类型为str类型。
- 如果没有个性设置,QMainWindow的默认窗口标题就为MainWindow
(4)setWindowIcon
setWindowIcon(self, QIcon)
- 设置窗口图标,参数类型是QIcon
- 注意这里QIcon类型对象的创建可能存在问题,加载崩溃,待解决?
(5)windowIcon
- 返回窗口图标,PyQt5.QtGui.QIcon类型
- 如果没有手动设置,则会返回默认的窗口图标,而非None
2、显示
(1)show和hide
- 将组件显示到父容器中,或者从父容器中隐藏。隐藏时,不占据位置,其它组件会填充
- 如果是窗口组件独立存在,需要显式调用show方法才能出现窗口,否则只创建、可使用,但不显示。如果是一般窗口,则默认会直接显示,不需要调用show
- 如果使用hide方法,隐藏组件。则可以使用show方法,将隐藏组件显示
(2)其它显示方法
showFullScreen(self)
showMaximized(self)
showMinimized(self)
showNormal(self)
isFullScreen(self) -> bool
isMaximized(self) -> bool
isMinimized(self) -> bool
isHidden(self) -> bool
(3)关闭和销毁
close(self) -> bool
destroy(self, destroyWindow: bool = True, destroySubWindows: bool = True)
- close一般只是将窗口隐藏,而窗口实体实际上还存在于内存中,等待再次显示。通过某个设置,也可以使其在关闭后进行销毁
- destroy则销毁窗体。默认destroyWindow为True,即关闭所在窗口;默认destroySubWindows也为True,即关闭打开的子窗口
- 下面的代码,窗口关闭后,休眠结束仍然可以再直接显示
self.window.close()
time.sleep(3)
self.window.show()
(4)update
update(self)
update(self, QRect)
update(self, QRegion)
update(self, int, int, int, int)
- 其具有四种调用方法,默认效果是进行组件的更新显示,某些组件设置可能存在无法立即刷新的效果,可以调用该方法,不用传参
- 也可以设置组件的位置和大小。其位置是相对于父组件进行设置