dmc1989
@dmc1989

Почему изображение моргает в pictureBox?

Если нажата кнопка мыши и она двигается, то происходит перерисовка ( там всего 2 линии ), но при передвижении изображение моргает, а когда отпустить кнопку, то пропадает.

private void handleMouseMove(object sender, MouseEventArgs e)
        {
            int delta_x = this.pX - e.X;
            int delta_y = this.pY - e.Y;

            // move right
            if (delta_x < 0 && this.clicked)
            {
                this.moveRight();
            }

            // move left
            if (delta_x > 0 && this.clicked)
            {
                this.moveLeft();
            }

            // move top
            if (delta_y > 0 && this.clicked)
            {
                this.moveTop();
            }

            // move bottom
            if (delta_y < 0 && this.clicked)
            {
                this.moveBottom();
            }

            if (delta_y == 0 && delta_x == 0 && this.clicked)
            {
                this.disableMoving();
            }            

            this.pX = e.X;
            this.pY = e.Y;

            if (this.clicked)
            {
                this.pictureBox.Invalidate();
                this.draw();
            }
        }
  • Вопрос задан
  • 168 просмотров
Решения вопроса 1
VoidVolker
@VoidVolker Куратор тега C#
Dark side eye. А у нас печеньки! А у вас?
Двойная буферизация не включена скорее всего кроме того, изображение может перерисовываться еще от кучи причин, а механизм/API рендеринга этого вот всего древний как сами знаете что.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы