设置文本类型错误 Pyqt4

SetText TypeError Pyqt4

当我开始 运行 遇到一些问题时,我最近开始创建 Web 浏览器。

我定义了函数

self.addressbar

这样:

    self.AddressBar = QtGui.QLineEdit(self.tab)
    self.AddressBar.setGeometry(QtCore.QRect(50, 20, 721, 31))
    self.AddressBar.setObjectName(_fromUtf8("AddressBar"))

我后来定义了

 self.Tab1Web

这样:

    self.Tab1Web = QtWebKit.QWebView(self.tab)
    self.AddressBar.setText(_fromUtf8(self.Tab1Web.url()))
    self.Tab1Web.setGeometry(QtCore.QRect(0, 70, 1171, 621))
    self.Tab1Web.setUrl(QtCore.QUrl(_fromUtf8("http://www.google.ca/?gfe_rd=cr&ei=GDbtWOjwM6WC8Qf-rI3QBA")))
    self.Tab1Web.setObjectName(_fromUtf8("Tab1Web"))

我的问题是出现类型错误:

self.AddressBar.setText(_fromUtf8(self.Tab1Web.url()))
TypeError: setText(self, object): argument 1 has unexpected type 'QUrl'

问题是我不知道如何解决这个问题。提前致谢!

取自

http://pyqt.sourceforge.net/Docs/PyQt4/qlineedit.html#setText

您应该传递 python 字符串或 pyqt QString。

尝试:

self.AddressBar.setText(self.Tab1Web.url().toString())

它应该可以解决问题....