Qurl не определен в pyqt - PullRequest
       7

Qurl не определен в pyqt

1 голос
/ 11 декабря 2011

учусь программировать на python с помощью qt, используя eric ide. Но, похоже, есть одна ошибка, которую я получаю.

Это говорит, что Global Qurl не определен или что-то в этом роде. Как я могу определить Qurl?

from PyQt4.QtGui import QMainWindow

from PyQt4.QtCore import pyqtSignature
from Ui_mainwindow import Ui_MainWindow

class MainWindow(QMainWindow, Ui_MainWindow):
    """
    Class documentation goes here.
    """
    def __init__(self, parent = None):
        """
        Constructor
        """
        QMainWindow.__init__(self, parent)
        self.setupUi(self)

    @pyqtSignature("")
    def on_btnNavigate_released(self):
        """
        Public slot invoked when the user clicks the Navigate Button .
        """
        self.webView.load(QUrl("http://qt.nokia.com/"));

Следую этому учебнику

Ответы [ 2 ]

3 голосов
/ 11 декабря 2011

Код, который вы разместили, в основном автоматически генерируется IDE Eric4 как часть учебника, на который вы разместили ссылку.

Если вы внимательно прочитали эту страницу учебника, онаупоминает об импорте QUrl в абзаце после фрагмента кода для метода on_btnNavigate_released (в нижней части страницы):

Обратите внимание, что для этого нужно импортировать QUrl (взятьвзгляните на исходный код, сопровождающий руководство).

Хотя, если быть честным, фрагмент исходного кода не на самом деле показывает соответствующую строку импорта!Вероятно, это должно выглядеть примерно так:

from PyQt4.QtCore import pyqtSignature, QUrl
...

@pyqtSignature("")
def on_btnNavigate_released(self):
    """
    Slot documentation goes here.
    """
    self.webView.setUrl(QUrl(self.txtUrl.text()))
0 голосов
/ 11 декабря 2011

Вы не импортировали QUrl из любого места.Сделайте это:

from PyQt4.QtCore import *

Обратите внимание, что вы также можете просто импортировать QUrl из QtCore, но импорт * здесь является обычным делом, поскольку QtCore огромен, и все классы имеют Q префикс, так что нетрудно догадаться, откуда они пришли.Конечно, это вопрос стиля, но лично я использую импорт * из QtCore и QtGui.Примеры из книги PyQt делают то же самое.

...