Flex Spark TitleWindow плохо перерисовывается при перетаскивании - PullRequest
0 голосов
/ 11 мая 2010

У меня проблема с перерисовкой в ​​flex 4. У меня есть искра titleWindow, и если я перетаскиваю его быстрее, похоже, его маска на один кадр позже компонента. он легко виден с тонкой рамкой в ​​1 пиксель, потому что становится невидимым даже при медленном движении.

Вы можете попробовать это здесь (это не моя страница, но ее проще показать здесь, чем загрузка примера):

http://flexponential.com/2010/01/10/resizable-titlewindow-in-flex-4/

Если вы двигаетесь в направлении вверх, вы видите исчезающую верхнюю границу. в других направлениях он не так чувствителен, так как имеет широкую тень и не очень хорошо виден на тени.

На моем компьютере я вижу его на каждой искре TitleWindow, найденной в Google, хотя оно гораздо менее заметно при менее контрастных обложках, без границ или с тенями.

Вы видите это там? У меня никогда не было этой проблемы с компонентами гало. Это делает то же самое с разными скинами. Я попытался удалить маски из скина, компонента кэша, скина и даже приложения как растровое изображение, но безуспешно.

Я также включил области перерисовки во флеш-плеере, и похоже, что он тоже на один кадр позже окна заголовка.

Кто-нибудь знает, почему это происходит или как я могу предотвратить это?

Спасибо

UPDATE:

ответов нет? на самом деле?

1 Ответ

2 голосов
/ 05 декабря 2010

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

Проблема со мной заключалась в том, что я пытался отцентрировать компонент "component.x = (parent.width - component.width) / 2", а затем нарисовать этот компонент программно. Проблема состояла в том, что component.x - это число, которое может привести к плавающим значениям, таким как 10.5 или аналогичным. И похоже, что эта функция bitmapFill выполняет обходы РАЗЛИЧНО, чем функция drawRect, которая делает ровную линию в 1 пиксель вокруг объектов (но ТОЛЬКО когда parent.width является нечетным числом). Для меня странным было то, что я вызывал функцию Draw только один раз, но эта строка все еще повторяется ...

Выполнение Math.floor (component.x) решило проблему.

P.S .: Я думаю, что вы также можете помочь решить проблему, установив cacheAsbitmap = true для перетаскиваемого объекта ...

Ура, Ян Празма

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...