如何从String(Text)
获取QlineEdit
?
我试过这样的。
myArea.getList()
函数是获取字符串值并使用字符串值检查数据库并返回List
self.a = QLineEdit()
self.b = QlineEdit()
....
self.b = self.myArea.getList(str(self.a.textChanged.connect(self.textchanged)))
def textchanged(self, text):
self.my_edit = text
在a
中输入文字,然后a
更改。阅读a
,按a
检查数据,b
创建的数据,b
中的输入文字,阅读b
,按{{检查数据1}}
首先,我不知道如何获得b
的价值。
print QLineEdit()
文本有效但返回String。
答案 0 :(得分:2)
以下是如何从self.a
和self.b
获取值并将值相互设置的完整示例。也许这个tutorial也可以帮助你。
您不能使用方法self.textchangedA
或self.textchangedB
的返回值,因此您必须使用该类的成员变量。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import logging
import sys
from PyQt4 import QtGui
log = logging.getLogger(__name__)
class MyWidget(QtGui.QWidget):
def __init__(self, parent=None):
super(MyWidget, self).__init__(parent)
vbox = QtGui.QVBoxLayout(self)
self.setLayout(vbox)
self.a = QtGui.QLineEdit(self)
self.b = QtGui.QLineEdit(self)
vbox.addWidget(self.a)
vbox.addWidget(self.b)
self.a.textChanged.connect(self.textchangedA)
self.b.textChanged.connect(self.textchangedB)
def textchangedA(self, text):
log.info("Text from a: %s", text)
log.info("Text from b: %s", self.b.text())
# do the processing
def textchangedB(self, text):
log.info("Text from b: %s", text)
log.info("Text from a: %s", self.a.text())
def test():
app = QtGui.QApplication(sys.argv)
w = MyWidget()
w.show()
sys.exit(app.exec_())
if __name__ == '__main__':
logging.basicConfig(level=logging.DEBUG)
test()