Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Не могу соединить сигнал с собственным слотом 
:(
    Опции темы
ВладимирМ
Дата 7.8.2011, 15:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.4.2009

Репутация: нет
Всего: нет



Добрый день всем! Я новичок в Python. Не получается соединить сигнал со слотом.

Код

#!/usr/bin/env python

from PyQt4 import QtCore, QtGui, QtNetwork, uic
from PyQt4.QtCore import pyqtSlot


class Form(QtCore.QObject):

    @pyqtSlot()
    def cmdOk(self):
        print("cmdOk")

    def createForm(self, fileName, pwgt=None):
        file = QtCore.QFile(fileName + ".ui")
        if file.open(QtCore.QIODevice.ReadOnly):
            self.formWidget = uic.loadUi(file)
            file.close()
            if self.formWidget.metaObject().className() == "QDialog":
                self.formWidget.setParent(pwgt)
                self.buttonOk = self.formWidget.findChild(QtGui.QPushButton, "cmdOk")   # Кнопка успешно находится
                print(self.buttonOk.objectName())                                                                         # что подтверждает данная отладочная команда
                self.buttonOk.pressed.connect(self.cmdOk)                                                       # Вот эта команда не срабатывает


if __name__ == '__main__':
    import sys
    app = QtGui.QApplication(sys.argv)
    conn = Form()
    conn.createForm("form1")
    conn.formWidget.exec_()


В этой программе загружается некая простейшая форма form1 с кнопкой Ok, в которой сигнал pressed() кнопки cmdOk должен быть соединен со слотом cmdOk(). Форма загружается и открывается, кнопка на форме успешно отыскивается, но при нажатии на нее ничего не происходит. Что не правильно?


PM MAIL   Вверх
ВладимирМ
Дата 8.8.2011, 16:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.4.2009

Репутация: нет
Всего: нет



Спасибо всем за внимание, разобрался сам. Просто в конструкторе класса Form я не вызвал конструктор родительского класса QObject. Тему можно закрыть.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Python: Разработка GUI | Следующая тема »


 




[ Время генерации скрипта: 0.0593 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.