我正在用pyqt编写GUI程序。我写了它的框架,现在我想写在LineEdit
并将它放入我的程序并做一些工作。我知道我应该使用信号,但我找不到它的功能。我该怎么写呢?
之后我想显示更改TextEdit
框的结果。怎么可能?
这是我的代码:
from PyQt4 import QtGui, QtCore
import sys
class Rss(QtGui.QWidget):
def __init__(self):
super(Rss,self).__init__()
self.resize(350,200)
self.center()
self.setWindowTitle("Rss Reader")
btn = QtGui.QPushButton("OK",self)
btn.setGeometry(300,40,40,20)
lbl = QtGui.QLabel("insert the site here :",self)
lbl.setGeometry(10,10,100,20)
txt = QtGui.QLineEdit(self)
txt.setGeometry(120,10,220,20)
res = QtGui.QLabel("The Result Is :",self)
res.setGeometry(10,60,100,20)
result = QtGui.QTextEdit(self)
result.setGeometry(10,80,330,100)
self.show()
def center(self):
qr = self.frameGeometry()
cp = QtGui.QDesktopWidget().availableGeometry().center()
qr.moveCenter(cp)
self.move(qr.topLeft())
app = QtGui.QApplication(sys.argv)
rss = Rss()
sys.exit(app.exec_())
答案 0 :(得分:1)
如果查看documenation,您会在那里找到所有可用的信号。您只需要在您的班级中添加一个应该完成工作并在__init__
中连接它们的方法:
txt.editingFinished.connect(self.do_the_work)
您可能还希望保留对txt
窗口小部件的引用(将txt
替换为self.txt
...),以便您可以轻松查找新值。