PYQt python中的diswindlying子窗口

时间:2016-04-18 05:57:29

标签: python pyqt

我是PyQt的新手,正在使用PyQt构建一个小型桌面应用程序。我正在尝试在主窗口上添加一个按钮,当我按下该按钮时,我想显示一个带有一些文本的子窗口。经过大量搜索后,我尝试了一些来自我身边的东西,最后得到了以下代码。但它不起作用。有人可以指导我。

def window():
 app = QtGui.QApplication(sys.argv)
 w = QtGui.QWidget()
 def show_html():
    w2 = QtGui.QWidget(w)
    html_source = QPlainTextEdit(w2)
    html_source.setPlainText("Some text here")
    html_source.move(700,50)
    w2.setGeometry(1000,1000,750,400)
    w2.setWindowTitle("Source Code")
    w2.show()

 generate_html = QtGui.QPushButton("Show HTML", w)
 generate_html.clicked.connect(show_html)

 w.setGeometry(2000,2000,1500,800)
 w.setWindowTitle("Fanwen Crawler")
 w.show()
 sys.exit(app.exec_())

if __name__ == '__main__':
window()

当我点击“显示HTML”按钮时,它没有显示另一个窗口。

1 个答案:

答案 0 :(得分:-1)

这段代码不起作用的唯一原因是 - 我没有在主窗口中定义我的子窗口,所以它没有执行。代码应该是 -

def window():
 app = QtGui.QApplication(sys.argv)
 w = QtGui.QWidget()
 w2 = QtGui.QWidget(w)
 def show_html():

    html_source = QPlainTextEdit(w2)
    html_source.setPlainText("Some text here")
    html_source.move(700,50)
    w2.setGeometry(1000,1000,750,400)
    w2.setWindowTitle("Source Code")
    w2.show()

 generate_html = QtGui.QPushButton("Show HTML", w)
 generate_html.clicked.connect(show_html)
 w.setGeometry(2000,2000,1500,800)
 w.setWindowTitle("Fanwen Crawler")
 w.show()
 sys.exit(app.exec_())

if __name__ == '__main__': 
 window()