Здравствуйте, гость ( Вход | Регистрация )
Litkevich Yuriy | Дата 14.11.2010, 23:40 |
QWidget.resizeEvent(event); эту штуку победил.Нужно так вызывать метод базового класса: , т.е. передавать все аргументы, в том числе и ссылку на экземпляр класса (здесь self) |
|
Litkevich Yuriy | Дата 14.11.2010, 22:52 |
этот код даёт такую ошибку:Цитата setSizePolicy(sp); NameError: global name 'setSizePolicy' is not defined setSizePolicy(sp); это метод QWidget-а, так как к нему обращатся?например на update() подобной ругани я не видел например на update() подобной ругани я не видел не на него тоже ругается.так унаследованные методы нужно вызывать как свои собственные, вроде интерпретатор перестаёт ругаться. А как быть с методами базового класса, вроде следуя аналогии в конструкторе: Цитата BaseClass.__init__(self) я делаю тоже для другого метода: и получаю такую ошибку:Цитата QWidget.resizeEvent(event); TypeError: descriptor 'resizeEvent' requires a 'PySide.QtGui.QWidget' object but received a 'PySide.QtGui.QResizeEvent' сообщения об ошибке я вообще не понимаю. descriptor - описатель, причём здесь описатель? requires - требует, что значит требует? в качестве аргумента? |
|
Sokoloff | Дата 14.11.2010, 22:14 |
Вроде ООП в питоне есть, и вроде наследование есть. Но почему-то наталкиваюсь на проблему: где method(args) - это метод базового класса или ещё дальше по иерархии.При таком варианте получаю ошибку: Цитата NameError: global name 'method' is not defined почему? неужели нужно писать имя базового класса перед методом и, как следствие, всё время помнить в каком из родительских классов этот метод был введён? В отличие от C++ питон не подставляет по умолчанию self(сишный this). Т.е. правильно вызывать надо так:
|
|
Litkevich Yuriy | Дата 14.11.2010, 18:37 |
Вроде ООП в питоне есть, и вроде наследование есть. Но почему-то наталкиваюсь на проблему: где method(args) - это метод базового класса или ещё дальше по иерархии.При таком варианте получаю ошибку: Цитата NameError: global name 'method' is not defined почему? неужели нужно писать имя базового класса перед методом и, как следствие, всё время помнить в каком из родительских классов этот метод был введён? |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 19.4.2024, 3:56 |