chi*_*-me 4 python pyqt qwidget pyqt4 python-3.x
我正在使用python3和pyqt4,我希望每次QMainWindow调整大小时都会运行一些代码.我想要这样的东西
self.window.resized.connect(self.resize)
Run Code Online (Sandbox Code Playgroud)
但resized不是内置函数或方法.谁能帮忙.
您必须覆盖该resizeEvent方法.
from PyQt4 import QtCore, QtGui
import sys
class MainWindow(QtGui.QMainWindow):
def resizeEvent(self, event):
print("resize")
QtGui.QMainWindow.resizeEvent(self, event)
app = QtGui.QApplication(sys.argv)
w = MainWindow()
w.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
对于任何正在寻找它的人,这里有一个 PyQt5 解决方案。这几乎是@eyllancesc 代码,所以非常感谢他们。PyQt5 只需要少量修改
from PyQt5 import QtCore, QtGui, QtWidgets
import sys
class MainWindow(QtWidgets.QMainWindow):
def resizeEvent(self, event):
print("Window has been resized")
QtWidgets.QMainWindow.resizeEvent(self, event)
app = QtWidgets.QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5566 次 |
| 最近记录: |