2010-01-14 4 views
0

Я делаю систему оповещения, в которой будут отображаться сообщения «a la» Messenger, и я хочу, чтобы они перемещались или изменялись, чтобы они отображались.Как я могу динамически перемещать/изменять размер формы?

Как я могу это сделать без того, чтобы сделать это:

do 
{ 
this.prop += 1; 
} while (this. prop = destination); 
+0

Я не понимаю связи между этим кодом и функциональностью, которую вы пытаетесь достичь. Вы пытаетесь избежать использования жесткого цикла для изменения координат и/или размера окна? –

+0

@Adam Crossland - да, я хочу «анимировать» форму, не делая эти неприятные циклы – Luiscencio

ответ

3

Вам нужно сделать Timer компонент и вызвать SetBounds метод форме в в событии таймера Tick.

0

установить form.size свойство изменять размер, form.position, чтобы изменить положение

0

Вам нужна независимая от частоты частота интерполятора.

Посмотрите на: Frame Rate Independent interpolation. В принципе, идея состоит в том, что вы вычисляете, какая ваша текущая позиция должна основываться на ожидаемом времени анимации и как долго вы анимации ... Это означает, что анимация займет столько же времени, чтобы перейти от точки a в точку b на любом оборудовании.

Конечно, вам нужно будет поместить форму со значениями, выходящими из этого, но это легкая часть!

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