Главная » Статьи » Заметки на полях

Циклы
Иногда бывают тупиковые ситуации, когда при использовании циклов невозможно отобразить например процесс или банально сообщить о начале коннекта к серверу.

Код
#! /usr/bin/env python
# -*- coding: utf_8 -*-

from direct.directbase import DirectStart
from direct.gui.OnscreenText import OnscreenText

class demo:

  def __init__(self):
   
     # Вывод текста
     self.text = OnscreenText(text = '0', scale = 0.07)
   
     # Событие от пробела.
     base.accept('space', self.loop)
   
  # Функция при нажатии на пробел
  def loop (self):

     for i in range(500):

        # Меняем текст.
        self.text.setText(str(i))
   
        # Рендерим.
        base.graphicsEngine.renderFrame()

demo()

base.run()


Если не использовать строку base.graphicsEngine.renderFrame(), то вы не увидите изменений, пока не выйдете из цикла своего.
Однако в данном примере это замедляет работу движка, так как приходиться еще отрисовывать по запросу, помимо основного цикла.
 
Категория: Заметки на полях | Добавил: serg-kkz (08.10.2016)
Просмотров: 4054 | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Онлайн всего: 4
Гостей: 4
Пользователей: 0