Python如何获取QLineEdit Text?

时间:2017-02-17 02:25:19

标签: python pyqt

你好世界我试图让QLineEdit作为一个用户工作输入巫婆他们想要输入歌曲名称。在输入歌曲名称之后,我希望在点击播放按钮后开始播放该歌曲一切正常,然后是他们可以在该文件夹中输入他们想要的歌曲的部分。问题是我不确定如何制作QlineEdit单词并在每次有人输入文本框时更新这里是我的代码希望有人可以帮助我提前谢谢!

import sys
import webbrowser
import random
import time
import os
import subprocess
from PyQt4.QtCore import QSize, QTimer, SIGNAL
from PyQt4.QtGui import QApplication,QScrollBar,QLineEdit , QDialog , QFormLayout ,QGraphicsRectItem , QMainWindow, QPushButton, QWidget, QIcon, QLabel, QPainter, QPixmap, QMessageBox, QAction, QKeySequence, QFont, QFontMetrics, QMovie 
from PyQt4 import QtGui
import vlc
#----|Imports End|----#
class UIWindow(QWidget):
    def __init__(self, parent=None):
        super(UIWindow, self).__init__(parent)

        self.resize(QSize(400, 450))

        self.Play = QPushButton('Play', self)
        self.Play.resize(100,40)
        self.Play.move(45, 100)#

        self.Pause = QPushButton('Pause', self)
        self.Pause.resize(100,40)
        self.Pause.move(260, 100)#



        self.Tbox = QLineEdit('Song name',self)
        self.Tbox.resize(400,25)
        self.Tbox.move(0,50)

        self.Play.clicked.connect(self.PlayB)
        self.Pause.clicked.connect(self.PauseB)
        self.Flask = vlc.MediaPlayer("C:\Users\Matt\Music\\"+str(self.Tbox.text())+".mp3")

    def PlayB(self):
        self.Flask.play()

    def PauseB(self):
        self.Flask.stop()

class MainWindow(QMainWindow,):
    def __init__(self, parent=None):
        super(MainWindow, self).__init__(parent)
        self.setGeometry(745 ,350 , 400, 450)
        self.setFixedSize(400, 450)
        self.startUIWindow()


    def startUIWindow(self):
        self.Window = UIWindow(self)
        self.setWindowTitle("HELP ME!")
        self.setCentralWidget(self.Window)
        self.show()



if __name__ == '__main__':
    app = QApplication(sys.argv)
    w = MainWindow()
    sys.exit(app.exec_())

1 个答案:

答案 0 :(得分:4)

您可以使用QLineEdit.text()方法轻松获取文字。 或者用QLineEdit.setText()方法

设置文本

如果要将其连接到QTextEdit您可以将其与每次文本更改时从QTextEdit发出的.textChanged信号连接。

与使用.clicked信号的方式相同,您可以将其用作:

QTextEdit.textChanged.connect(your_method_to_put_text_somewhere_else)