Для приложения, которое я разрабатываю в AIR, я удалил хром через app.xml. Я управляю функциями минимизации, максимизации, закрытия, изменения размера и всех других функций из приложения. Я столкнулся с проблемой с функцией изменения размера. Я определил ручки для изменения размера, а также я могу отображать свой пользовательский курсор при наведении мыши на него. Проблема в том, что видна только та часть этого курсора, которая находится внутри границы приложения, остальная часть изображения курсора скрыта.
Для реализации пользовательского курсора я делаю следующее.
- Вставить изображение курсора.
[Embed(source='/resources/images/resize_right.png')]
public var resizeRight:Class;
- Добавьте прослушиватель событий на холст, который действует как ручка.
rightResizeGrip.addEventListener(MouseEvent.MOUSE_OVER, function(e)
{
setResizeCursor(CURSOR_RIGHT);
});
rightResizeGrip.addEventListener(MouseEvent.MOUSE_OUT, function(e)
{
unsetResizeCursor();
});
- В setResizeCursor
private function setResizeCursor(type:String)
{
var cursorClass;
var xOffset;
var yOffset;
switch(type)
{
case CURSOR_RIGHT:
cursorClass = resizeRight;
xOffset = -14;
yOffset = -10;
break;
case CURSOR_LEFT:
cursorClass = resizeLeft;
xOffset = 0;
yOffset = -10;
break;
case CURSOR_RIGHT_TOP:
cursorClass = resizeRightTop;
xOffset = -20;
yOffset = 0;
break;
case CURSOR_RIGHT_BOTTOM:
cursorClass = resizeRightBottom;
xOffset = -20;
yOffset = -20;
break;
case CURSOR_BOTTOM:
cursorClass = resizeBottom;
xOffset = -10;
yOffset = -14;
break;
case CURSOR_LEFT_BOTTOM:
cursorClass = resizeLeftBottom;
xOffset = 0;
yOffset = -20;
break;
case CURSOR_LEFT_TOP:
cursorClass = resizeleftTop;
xOffset = 0;
yOffset = 0;
break;
}
if(cursorClass)
CursorManager.setCursor(cursorClass, CursorManagerPriority.HIGH, xOffset, yOffset);
}
Можно ли отобразить полное изображение курсора, хотя он находится за границей приложения?