SetText TypeError Pyqt4

时间:2017-04-22 19:36:44

标签: python pyqt pyqt4 python-3.6

当我开始遇到一些问题时,我最近开始创建一个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"))

我的问题是我得到了TypeError:

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

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

1 个答案:

答案 0 :(得分:0)

取自

  

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

你应该传递一个python字符串或pyqt QString。

尝试:

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

应该这样做......