Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 22, 2013 18:32:00

mironich
От:
Зарегистрирован: 2011-05-23
Сообщения: 118
Репутация: +  2  -
Профиль   Отправить e-mail  

Насколько правильно

А должен ли класс для работы с ВК знать о форме?
Ну я не так немного написал.
Есть класс который выполняет запросы к VK_API, есть класс который управляет загрузкой фото ВК и установкой описания, он использует тот класс что в начале.
Как-то так.
vkapi, - класс для отправки запросов к API VK.
PhotoUploader - класс который управляет загрузкой фото, он использует класс vkapi, вообще цель класса, обработка исключений разных, их логирование, загрузка списка, фото в память , установка описание фото.
М.б выложу приложение когда до ума доведу и поймете о чем я.
Ну если if'ы выглядят как:
Так выглядят.
		if event.type() == events.MaximumProgressRecivedType:
			self.progress_bar.setMaximum(event.maximum)
		elif event.type() == events.ProgressChangeType:
			self.progress_bar.setValue(self.progress_bar.value() + event.value)
		elif event.type() == events.TaskComplete:
			#if self.progress_bar.value() != self.progress_bar.maximum():
			#	self.progress_bar.setValue(self.progress_bar.maximum())
			self.errors_conter = 0
			self.status_bar.clearMessage()
			self.stop_clicked()
		elif event.type() == events.CaptchaRecived:
			self.cp_box.exec__(event.img_data)
		elif event.type() == events.SetStatusMessage:
			self.status_bar.showMessage(event.message)
		elif event.type() == events.ErrorOcurred:
			self.errors_conter += 1
			self.errors_counter_label.caption = self.errors_conter



Отредактировано mironich (Янв. 22, 2013 18:33:36)

Офлайн

#2 Янв. 22, 2013 19:50:59

reclosedev
От: Н.Новгород
Зарегистрирован: 2012-03-29
Сообщения: 870
Репутация: +  173  -
Профиль   Отправить e-mail  

Насколько правильно

Вы что-то недосказали, я что-то недопонял, вот и получается почти бесполезное обсуждение : “может так, может не так”.

mironich
Так выглядят.
Это не тот случай, что писал. Но я бы все равно сигналы использовал.
Тогда несколько разных полей в event (maximum, message, value, img_data) и иерархия типов Event (?если есть), заменились бы параметрами сигналов. Многие сигналы можно было бы соединять напрямую с методом, например:
newStatusMessage = pyqtSignal(unicode)
...
self.api.newStatusMessage.connect(self.ui.status_bar.showMessage)
Само создание эвента, наверное, тоже длиннее чем вызов emit(param) сигнала.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version