Найти - Пользователи
Полная версия: QWebView не срабатывает connect
Начало » GUI » QWebView не срабатывает connect
1
Chrizt
Привет.

Вот, стырил чужой код попроще, чтобы проверить, только в моём коде не работает connect сигналов QWebView, или же всё-таки не во мне дело.

import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *
from PyQt4.QtWebKit import *
from PyQt4 import QtCore

def link_clicked(url) :
print "click =" +url.toString()

def load_progress(load) :
print "load =" + str(load)

app = QApplication(sys.argv)
web = QWebView()
web.load(QUrl("http://www.google.com"))

QtCore.QObject.connect(web, QtCore.SIGNAL("loadProgress (const QUrl&"), load_progress)
QtCore.QObject.connect(web, QtCore.SIGNAL("urlChanged (int)"), link_clicked)
QtCore.QObject.connect(web, QtCore.SIGNAL("linkClicked (const QUrl&)"), link_clicked)

web.show()

sys.exit(app.exec_())
Однако, брал другой код - там как раз формочки нарисованы в дизайнере и обработаны pyuic, и там как раз все connct'ы коннектятся.

Привести его не могу, ибо много букв.

Подскажите, плиз, почему вышеприведённый код может не работать (connect'ы)?
Я же писал примерно пдобную ерунду, и у меня так же не срабатывали коннекты.

Вот скрин консоли - никаких принтов :(

truporez
Цепляйте так
web.loadProgress.connect(load_progress)
web.urlChanged.connect(link_clicked)
web.linkClicked.connect(link_clicked)
Chrizt
О! Работает! )

А в чём фишка? О_о
pasaranax
Chrizt
QtCore.SIGNAL(“loadProgress (const QUrl&”)
1. ты пример из с++ что ли взял? )
2. скобочку потерял
3. трупорез дает дельный совет, фишка в новом стиле слотов-сигналов (pyqt 4.5+)
Chrizt
1. Нет, питонеры так же записывают почему-то.
2. Да не суть. Я и по-другому у себя пробовал прописывать, по правилам.
3. Во, жесть! Я ж не знал ) Только начал знакомиться с кути, а тут уже новый стиль )

зы. А как тогда в новом стиле будет выглядеть коннект с настоящим слотом, а не callable ?
pasaranax
проблема в новом стиле может возникнуть с перегруженными слотами
Chrizt
Не нравится мне 4.7.2, блин :(
Постоянные C++ Runtime Error, глюки, баги :(

У меня цель - сделать браузер в MDI стиле или со вкладками - каждая вкладка должна быть отдельным QWebView, чтобы в разных вкладках в пределах одного окна, могла быть открыта одна и та же страница, но у каждой своя кука. Ну и сделать как-то запоминалку логинов/паролей, хотя пока это довольно сложно реализуется. Не без js и прочих шаманств.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB