2008-09-12 6 views

ответ

4

Если вы загружаете каждый кадр в ImageList, вы можете использовать цикл для обновления каждого кадра. Пример:

bool runThrobber = true; 
    private void AnimateThrobber(TreeNode animatedNode) 
    { 
     BackgroundWorker bg = new BackgroundWorker(); 
     bg.DoWork += new DoWorkEventHandler(delegate 
     { 
      while (runThrobber) 
      { 
       this.Invoke((MethodInvoker)delegate 
       { 
        animatedNode.SelectedImageIndex++; 
        if (animatedNode.SelectedImageIndex >= imageList1.Images.Count) > animatedNode.SelectedImageIndex = 0; 
       }); 
       Thread.Sleep(100); 
      } 
     }); 
     bg.RunWorkerAsync(); 
    } 

Очевидно, что больше, чем несколько способов осуществить это, но вот основная идея.

+2

Если вы посмотрите на это снова, вы действительно должны проверить и посмотреть, находится ли индекс изображения в пределах области imagelist.images, прежде чем увеличивать его. – 2008-09-13 03:19:53

Смежные вопросы