从QLineEdit和QTextEdit获取输入并转换为字符串

2024-09-29 19:25:56 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试使用Pyside创建一个简单的接口,它将接受并将文本写入csv文件。在

下面的代码不会生成错误消息,但它只会写类似于“PySide.QtGui.QLineEdit对象位于0x03A534B8“处。我一直在试图解决如何将这些设置为字符串,但遇到了困难(我对python和pyside的经验很少)。我做错什么了?在

import sys
from PySide import QtGui, QtCore
import csv

class Form(QtGui.QWidget):
    def __init__(self):
        super(Form, self).__init__()
        self.initUI()

    def initUI(self):

        global itemText
        global descText

        item = QtGui.QLabel('Item')
        itemEdit = QtGui.QLineEdit()
        itemText = str(itemEdit)
        desc = QtGui.QLabel('Description (optional)')
        descEdit = QtGui.QTextEdit()
        descText = str(descEdit)
        add = QtGui.QPushButton("Add item")

        grid = QtGui.QGridLayout()
        grid.setSpacing(10)

        grid.addWidget(item, 1, 0)
        grid.addWidget(itemEdit, 1, 1)

        grid.addWidget(desc, 2, 0)
        grid.addWidget(descEdit, 2, 1, 3, 1)

        grid.addWidget(add, 6, 1)

        add.clicked.connect(self.writeFile)

        self.setLayout(grid)

        self.setGeometry(300, 300, 350, 300)
        self.setWindowTitle("Add to list")
        self.show()

    def writeFile(self):
        csvfile = open('list.csv', 'ab')
        csvwriter = csv.writer(csvfile)
        csvwriter.writerow([itemText, descText])
        print itemText

def main():
    app = QtGui.QApplication(sys.argv)
    ex = Form()
    sys.exit(app.exec_())

if __name__ == '__main__':
    main()

Tags: csvimportselfformadddefsysitem

热门问题