Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » Запуск функции по клику на кнопку (PyQt4) [RSS Feed]

#1 Май 28, 2015 18:04:44

hvppydvddy
Зарегистрирован: 2015-05-26
Сообщения: 36
Репутация: +  0  -
Профиль   Отправить e-mail  

Запуск функции по клику на кнопку (PyQt4)

Shaman
Ну так бородатый способ, применимый почти во всех гуях.
А вообще по мне странно, что мой вариант из первого поста (time.sleep()) не справился. Уж очень простая задача стояла же.

Офлайн

#2 Май 28, 2015 20:26:39

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

Запуск функции по клику на кнопку (PyQt4)

hvppydvddy
странно, что мой вариант из первого поста (time.sleep()) не справился
А что такого делает sleep?

Офлайн

#3 Май 28, 2015 21:20:20

hvppydvddy
Зарегистрирован: 2015-05-26
Сообщения: 36
Репутация: +  0  -
Профиль   Отправить e-mail  

Запуск функции по клику на кнопку (PyQt4)

Shaman
А что такого делает sleep?
Спит указанный интервал. Например для моей функции:
def addingtext(self):
        time.sleep(1)
        text = 'Text_1'
        self.item_lw.addItem(text)
        time.sleep(1)
        text2 = 'Text_2'
        self.item_lw.addItem(text2)
добавление item'а в QListWidget должно произойти по очереди с секундным интервалом, а не как получилось (2 секуеды ожидания и сразу добавляет 2 позиции). Если я меняю добавление например на print(), то распечатка в консоли проходит как должно быть (по очереди и с секундным интервалом), с Qt все как-то странновато.

Отредактировано hvppydvddy (Май 28, 2015 21:20:53)

Офлайн

#4 Май 28, 2015 21:52:37

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

Запуск функции по клику на кнопку (PyQt4)

Метод addItem добавляет элемент и посредством передачи сообщения уведомляет ядро Qt о необходимости отрисовки изменений. Это сообщение не может быть обработано пока управление не вернётся в обработчик очереди сообщений т.к. вся каша варится в одном потоке.

Офлайн

  • Начало
  • » GUI
  • » Запуск функции по клику на кнопку (PyQt4) [RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version