我正在学习PySide,似乎无法显示QLineEdit
。我最好的猜测是因为QTextEdit
被设置为主要小部件并且正在掩盖它。这是我的代码:
#!/usr/bin/python
import sys
from PySide import QtGui
class Window(QtGui.QMainWindow):
def __init__(self):
super(Window, self).__init__()
self.initUI()
def initUI(self):
self.setWindowTitle("A Text Editor")
self.setGeometry(300,1000,500,500)
self.fileName = QtGui.QLineEdit('File Name')
self.fileName.resize(self.fileName.sizeHint())
self.text = QtGui.QTextEdit()
self.setCentralWidget(self.text)
menubar = self.menuBar()
exitAction = QtGui.QAction(QtGui.QIcon('exit.png'),'&Exit',self)
exitAction.setShortcut('Ctrl+Q')
exitAction.triggered.connect(self.close)
saveAction = QtGui.QAction(QtGui.QIcon('save.png'),'&Save',self)
saveAction.setShortcut('Ctrl+S')
saveAction.triggered.connect(self.save)
fileMenu = menubar.addMenu('&File')
fileMenu.addAction(exitAction)
fileMenu.addAction(saveAction)
self.show()
def save(self):
f = open(self.fileName.text(),'w')
f.write(self.text.toPlainText())
f.close()
def main():
app = QtGui.QApplication(sys.argv)
win = Window()
exit(app.exec_())
if __name__ == "__main__":
main()
答案 0 :(得分:0)
您将要设置一个具有某种布局形式的中央窗口小部件,以使它们都显示出来。
类似的东西:
layout = QtGui.QVBoxLayout()
layout.addWidget(self.fileName)
layout.addWidget(self.text)
centralWidget = QtGui.QWidget()
centralWidget.setLayout(layout)
self.setCentralWidget(centralWidget)