afarber
31.10.2007, 03:12
Добрый вечер!
Adobe пишет в Component development checklist (http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00002481.html):
Use the RectBorder class (mx.skins.halo.RectBorder)
rather than graphical elements to draw borders around objects.
но вот как это делать конкретно, нигде не объясняет.
Мне хотелось бы нарисовать вокруг своих компонентов такую же прямоугольную зеленую рамку, как и у других стандартных v2-компонентов типа mx.controls.Button.
Я приготовил совсем простой компонент, который рисует прямоугольник:
http://preferans.de/flash/RectComp.as
http://preferans.de/flash/RectComp.fla
- как бы добавить теперь вокруг него стандартную haloGreen-рамку?
В адобовском файле mx\skins\halo\RectBorder.as есть интересное место:
function drawBorder(Void):Void
{
...
var b:String = getStyle(borderStyleName);
....
else if (b == "default")
{
drawRoundRect( 0,5,ww,hh-5,{tl:5,tr:5,br:0,bl:0},0x5e5e5e,10);//OuterBorder
drawRoundRect(
1,4,ww-2,hh-5,{tl:4,tr:4,br:0,bl:0},[0x5e5e5e,0x5e5e5e],10,0,"radial");
drawRoundRect(
2,0,ww-4,hh-2,{tl:3,tr:3,br:0,bl:0},[0xc4cccc,0xb4bcbc],100,0,"radial");
drawRoundRect( 3,1,ww-6,hh-4,{tl:2,tr:2,br:0,bl:0},0xffffff,100);//face
}
И Xray показывает в моем RectComp наличие функции drawRoundRect.
Но вот как их соединить?
Спасибо
Алекс
Adobe пишет в Component development checklist (http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00002481.html):
Use the RectBorder class (mx.skins.halo.RectBorder)
rather than graphical elements to draw borders around objects.
но вот как это делать конкретно, нигде не объясняет.
Мне хотелось бы нарисовать вокруг своих компонентов такую же прямоугольную зеленую рамку, как и у других стандартных v2-компонентов типа mx.controls.Button.
Я приготовил совсем простой компонент, который рисует прямоугольник:
http://preferans.de/flash/RectComp.as
http://preferans.de/flash/RectComp.fla
- как бы добавить теперь вокруг него стандартную haloGreen-рамку?
В адобовском файле mx\skins\halo\RectBorder.as есть интересное место:
function drawBorder(Void):Void
{
...
var b:String = getStyle(borderStyleName);
....
else if (b == "default")
{
drawRoundRect( 0,5,ww,hh-5,{tl:5,tr:5,br:0,bl:0},0x5e5e5e,10);//OuterBorder
drawRoundRect(
1,4,ww-2,hh-5,{tl:4,tr:4,br:0,bl:0},[0x5e5e5e,0x5e5e5e],10,0,"radial");
drawRoundRect(
2,0,ww-4,hh-2,{tl:3,tr:3,br:0,bl:0},[0xc4cccc,0xb4bcbc],100,0,"radial");
drawRoundRect( 3,1,ww-6,hh-4,{tl:2,tr:2,br:0,bl:0},0xffffff,100);//face
}
И Xray показывает в моем RectComp наличие функции drawRoundRect.
Но вот как их соединить?
Спасибо
Алекс