2013-03-21 2 views
2

У меня есть проект в Compact framework 2.0 C# Я использую много изображений в форме, и есть таймер, чтобы менять местоположение ящиков для картинок каждую секунду, но перемещение происходит очень медленно, как я могу сделать быстрее это?Скользящее изображение с таймером быстрее

интервал таймера 100

private void timer1_Tick(object sender, EventArgs e) 
{ 
    picust.Location = new Point(picust.Location.X, picust.Location.Y + 10); 
    picx.Location = new Point(picx.Location.X, picx.Location.Y + 10); 
    picy.Location = new Point(picy.Location.X, picx.Location.Y + 10); 
} 
+0

Вы пробовали опустить интервал таймера? – MedMik

+0

@MedMik Мне нужно использовать интервал времени – user2180946

ответ

3

Поскольку вы используете NET Compact Framework 2.0 вы можете улучшить свой код, используя SuspendLayout и ResumeLayout методы, которые поддерживаются начиная с версии 2.0. Поместите эти методы вокруг вашего кода, как в примере:

//assuming that this code is within the parent Form 

private void timer1_Tick(object sender, EventArgs e) 
{ 
    this.SuspendLayout(); 
    picust.Location = new Point(picust.Location.X, picust.Location.Y + 10); 
    picx.Location = new Point(picx.Location.X, picx.Location.Y + 10); 
    picy.Location = new Point(picy.Location.X, picx.Location.Y + 10); 
    this.ResumeLayout(); 
} 

Это предотвратит три перерисовок вида и вместо того, чтобы выполнить только один.

+0

Спасибо. За ваш ответ я пытаюсь. Как некоторые изображения находятся в панели управления или спереди на другом изображении, мне нужно приостановить макет других элементов управления. – user2180946

+0

Всякий раз, когда вы SuspendLayout, вы предотвращаете переделать управление для каждого изменения, которое вы сделали, и он ждет вызова ResumeLayout, когда он перерисовывается в соответствии с внесенными вами изменениями. Поэтому вы должны использовать эту концепцию всякий раз, когда вы меняете несколько элементов управления в одном и том же родительском элементе управления. –

+0

Большое спасибо за ответы ...... – user2180946

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