Найти - Пользователи
Полная версия: Делимся опытом использования QtDesigner + pyuic5
Начало » GUI » Делимся опытом использования QtDesigner + pyuic5
1 2 3 4 5
Metallikus
Первое. Потери производительности особой быть не должно ведь?
py.user.next
Metallikus
Потери производительности особой быть не должно ведь?
Можно ведь и до худшего случая дойти, рассматривая такое окно - когда происходит переинициализация большого количества свойств в большом количестве окон.
Metallikus
Ну так-то да. Но, в любом случае, если на основании одного класса окна делать несколько разных наследников, то в них писать придётся всё самому. И никакой разницы нет, сгенерирован исходный класс pyuic или руками набирался. Или есть пример, где разница была бы ощутимой?
Rodegast
> Как ты добавишь в окно новый функционал, относящийся к нему?
Легко. Ты бы мил-человек вместо того что бы позорится потратил бы 15 минут и разобрался как формы подключаются и как потом с ними работать. А то же элементарных вещей не знаешь.
py.user.next
Rodegast
Легко. Ты бы мил-человек вместо того что бы позорится потратил бы 15 минут и разобрался как формы подключаются и как потом с ними работать. А то же элементарных вещей не знаешь.
Вот тебе окно , добавь в него функционал. По истечении 10 секунд на нём появляется кнопка.

Metallikus
Но, в любом случае, если на основании одного класса окна делать несколько разных наследников, то в них писать придётся всё самому.
Не, смысл наследования в том, чтобы не писать одно и то же.

Metallikus
И никакой разницы нет, сгенерирован исходный класс pyuic или руками набирался.
Речь о том, что он генерирует, связывает ли сигналы так, как тебе надо, а не так, как он смог в силу заложенных правил. Фактически, ты предложил писать хороший костыль к плохому коду. Лучше хороший код сразу написать.
Rodegast
> Вот тебе окно , добавь в него функционал. По истечении 10 секунд на нём появляется кнопка.
Учись баклан.
py.user.next
Rodegast
Учись баклан.
baklanWindow.tar.gz (1,6 KБ)

Вот в этом классе должна быть эта кнопка
class Ui_MainWindow(object):
там же, где и все кнопки, относящиеся к окну.

Эту форму нужно будет потом наследовать, поэтому там уже всё должно быть и работать.

Ты просто формошлёп, оттуда и мышление такое.
Rodegast
> Вот в этом классе должна быть эта кнопка
И это лишний раз доказывает что надо всё самого начала делать по феншую т.е. через дизайнер. Кстати для любителей наследования вариант в стиле PyQt3:
class startBaklan(QtGui.QMainWindow, Ui_MainWindow):
	def __init__(self):
		QtGui.QMainWindow.__init__(self)
		Ui_MainWindow.__init__(self)
		self.setupUi(self)
		self.knopka = QtGui.QPushButton(u"Я пришла!",self)
		self.knopka.hide()
		self.timer = self.startTimer(10000)
	def timerEvent(self, event):
		self.killTimer(self.timer)
		self.knopka.show()
py.user.next
class NewUi(Ui_MainWindow):
    pass
Вот здесь уже должна унаследоваться форма со всеми кнопками на ней.

У тебя же одна кнопка в форме, другая - не в форме, а где-то там в производном классе. Размазал кнопки по всей программе, так ещё и вручную добавляешь их, внезапно забыв про дизайнер.
Rodegast
Откуда же ты такой взялся? Ещё несколько дней назад ничего не знал что с формами делать, а теперь про наследование грузишь.

> У тебя же одна кнопка в форме, другая - не в форме
Так там всего только 1 кнопка ты бы определился где она в форме или нет, и только потом ерунду писал.

> так ещё и вручную добавляешь их, внезапно забыв про дизайнер.
Тебе видно склероз изменяет если не помнишь чью форму я модифицировал.
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