2015-05-27 108 views
2

我想從QLineEdit()對象中檢索純文本。文本方法返回一個QString對象。我只想要一個簡單的字符串對象。 我正在使用pyqt4。從QLineEdit獲取純文本

def n(self): 
    new_label=QLineEdit() 
    new_label.setText("txt") 
    txt=self.new_label.text() 
    self.name=txt 

TXT應該是一個簡單的字符串不QString

回答

2

要轉換一個的QString在的Python 2,這樣做:

self.name = unicode(self.new_label.text()) 

自動轉換所有將QString,把這個在您的代碼開頭:

import sip 
sip.setapi('QString', 2) 
# must be before any pyqt imports 

from PyQt4 import QtCore, QtGui 

如果你這樣做,沒有必要繼續使用unicode(),因爲所有方法將返回python字符串而不是QStrings。並注意,與Python 3,這種行爲是默認的,所以你不需要做任何事情總是得到python字符串。

0

轉換爲字符串:

self.name = str(txt)