2017-02-15 115 views
0

我正在使用PyQt並試圖爲用戶構建多行文本輸入框。但是,當我運行下面的代碼時,我得到一個只允許輸入單行文本的框。如何修復它,以便用戶可以根據需要輸入儘可能多的行數?PyQt多行文本輸入框

import sys 
    from PyQt4.QtGui import * 
    from PyQt4.QtCore import * 

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

     w.resize(640, 480) 

     textBox = QLineEdit(w) 
     textBox.move(250, 120) 

     button = QPushButton("click me") 
     button.move(20, 80) 

     w.show() 

     sys.exit(app.exec_()) 


    if __name__ == '__main__': 
     window() 

回答

3

QLineEdit是提供單行而不是多行的小部件。您可以使用QPlainTextEdit用於此目的。

import sys 
from PyQt4.QtGui import * 
from PyQt4.QtCore import * 

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

    w.resize(640, 480) 

    textBox = QPlainTextEdit(w) 
    textBox.move(250, 120) 

    button = QPushButton("click me", w) 
    button.move(20, 80) 

    w.show() 

    sys.exit(app.exec_()) 


if __name__ == '__main__': 
    window()