我是编程新手,我创建了一个简单的应用程序,其中包含 Python 和 PySide 中的一个类,用于操作电话账单 csv 文件。现在我也想要一个移动选项。
当我的类继承自 QWidget 时,如何添加菜单栏?我应该编写另一个继承自 QMainWindow 的类,然后将我的第一个类的实例作为中央小部件吗?这是正确的方法吗?
class MyWidget(QtGui.QWidget):
def __init__(self, parent=None):
super(MyWidget, self).__init__(parent)
....
class MyWindow(QtGui.QMainWindow):
def __init__(self, parent=None):
super(MyWindow, self).__init__(parent)
widget = MyWidget()
self.setCentralWidget(widget)
...
最佳答案
不需要 QMainWindow
,您只需在小部件中创建一个 QMenuBar
即可。
class MyWidget(QtGui.QWidget):
def __init__(self, parent=None):
super(MyWidget, self).__init__(parent)
self.menu=QtGui.QMenuBar()
self.menu.addAction("do something")
layout=QtGui.QVBoxLayout()
layout.addWidget(self.menu)
QMainWindow
基本上是一个小部件,它已经具有带有菜单栏、工具栏、状态栏等的布局。如果您不需要所有这些功能,您可以使用简单的QWidget
并仅添加您想要的内容。
关于python - 菜单和工具栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31934369/