C # - прозрачность, не проводимая должным образом (достаточно быстро)

StackOverflow https://stackoverflow.com/questions/4278377

Вопрос

Это мой первый вопрос на этом сайте, но это помогло мне много в прошлом.

У меня небольшая (но раздражающая) проблема с проектом, над которым я работаю. Я использую элемент управления PictureBox, который загружает файл PNG с прозрачными областями. Часть прозрачности отлично работает нормально, но мне нужен пользователь, чтобы иметь возможность перетащить этот рисунок с помощью мыши. ImiteBox содержится в панели с квадратами. Квадраты нарисованы в переопределенном методе OnPaint панели.

Проблема в том, что если я перемещаю управление PictureBox, область, которая является прозрачным, не рисует фона достаточно быстро, а квадраты не нарисованы точно, где они должны быть. Есть ли способ обойти это и сделать все выглядеть красиво и гладко?

Я приложил картину, чтобы вы могли понять лучшее, что я пытаюсь сказать. Для этого примера я использую только строку вместо фактического изображения, которую я буду использовать, так что все более очевидно. Обратите внимание на квадраты вокруг линии, которые не нарисованы должным образом.

http://s1084.photobucket.com/albums/j405/headbanging1638/?action=view¤t=problem.jpg.

PS: я использую color.transparent для backcolor из imagebox

Это было полезно?

Решение

Может быть, вы могли бы попытаться сделать недействительны макета на MouseMove, чтобы заставить более быструю скорость перерисовки?

Другие советы

Я думаю, что довольно похожая проблема, которую я спросил некоторое время назад.

Увидеть мой Вопрос, И ответьте, что я принял. Я думаю, что это поможет вам.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top