Форум сайта python.su
0
по клику кнопки пытаюсь добавить в виджет одно строчное текстовое поле, по идее такой код должен работать, просмотрел много примеров, где-то так все и должно быть, .. но не работает …
def add_Text_Line(self):
self.text1 = QtGui.QLineEdit('text', self)
self.text1.setGeometry(70, 35, 250, 35)
self.addWidget(self.text1)
Офлайн
0
вернее наверное должно быть так, но тоже неработает..
def add_Text(self):
self.text1 = QtGui.QLineEdit('text', self)
self.text1.setGeometry(70, 35, 250, 35)
self.setWidget(self.text1)
Отредактировано clinicalfilm (Окт. 1, 2012 09:43:26)
Офлайн
173
clinicalfilmПочитайте лучше учебник
просмотрел много примеров, где-то так все и должно быть
Офлайн
0
reclosedevclinicalfilmПочитайте лучше учебник
просмотрел много примеров, где-то так все и должно быть
http://zetcode.com/tutorials/pyqt4/ (перевод)
Здесь ответ:
http://zetcode.com/tutorials/pyqt4/layoutmanagement/ (ru)
Офлайн
173
clinicalfilmНаверное, нужно все-таки последовательно почитать учебник, иногда обращаясь к документации Qt, уяснить разницу между QWidget (и его наследниками) и QLayout (QHBoxLayout в данном случае), и вообще, о принципах компоновки виджетов, что и описано во второй ссылке.
наверное нужно произвести еще какое-нибудь шаманство?
clinicalfilmи другого вопроса я бы рекомендовал почитать про классы, и разобраться что такое и зачем нужен self.
почему команда addWidget работает если она расположена в теле функции self и не работает если она расположена в другой процедуре, которая вызывается с кнопки
Офлайн
0
reclosedevclinicalfilmНаверное, нужно все-таки последовательно почитать учебник, иногда обращаясь к документации Qt, уяснить разницу между QWidget (и его наследниками) и QLayout (QHBoxLayout в данном случае), и вообще, о принципах компоновки виджетов, что и описано во второй ссылке.
наверное нужно произвести еще какое-нибудь шаманство?
Причина в том, что класс наследуется от QWidget и функции addWidget у него нет.
А после таких описаний:clinicalfilmи другого вопроса я бы рекомендовал почитать про классы, и разобраться что такое и зачем нужен self.
почему команда addWidget работает если она расположена в теле функции self и не работает если она расположена в другой процедуре, которая вызывается с кнопки
Офлайн