digitalnamo
02-13-2008, 06:55 PM
ok 3 errors!
news_txt.styleSheet = style; 1120: Access of undefined property news_txt
news_txt.styleSheet = style; 1120: Access of undefined property news_txt
maxScroll = minScroll - news_mc.height + mask_mc.height;
Everything is named correctly but I think it is the external stylesheet that is causing some confusion. I copied the code from a Lynda.com tutorial which worked but I added css to the mix
stop();
var textLoader:URLLoader = new URLLoader();
var textReq:URLRequest = new URLRequest("text/news.txt");
var cssLoader:URLLoader = new URLLoader();
var cssRequest:URLRequest = new URLRequest("text/style.css");
var style:StyleSheet = new StyleSheet();
function textLoadedFunc(event:Event):void
{
cssLoader.load(cssRequest);
cssLoader.addEventListener(Event.COMPLETE, cssLoaded);
}
function cssLoaded(event:Event):void
{
style.parseCSS(cssLoader.data);
news_txt.styleSheet = style;
news_txt.htmlText = textLoader.data;
}
textLoader.load(textReq);
textLoader.addEventListener(Event.COMPLETE, textLoadedFunc);
//below is scrollbar stuff
var scrollPercent:Number = 0;
var minScroll:Number;
var maxScroll:Number;
var targetScroll:Number = news_mc.y;
var easing:Number = 5;
var scrollAmt:Number = 15;
var scrollDirection:Number = 0;
function textLoaded(event:Event):void
{
news_mc.news_txt.text = textLoader.data;
minScroll = news_mc.y;
maxScroll = minScroll - news_mc.height + mask_mc.height;
}
function dragScroller(event:MouseEvent):void
{
var dragX:Number = line_mc.x - scroller_mc.width/2 + 1;
var dragY:Number = line_mc.y;
var dragW:Number = 0;
var dragH:Number = line_mc.height - scroller_mc.height;
scroller_mc.startDrag(false, new Rectangle(dragX,dragY,dragW,dragH));
stage.addEventListener(MouseEvent.MOUSE_UP, stopDragging);
stage.addEventListener(Event.ENTER_FRAME, setScrollPercent);
stage.removeEventListener(Event.ENTER_FRAME, scrollText);
}
function stopDragging(event:MouseEvent):void
{
scroller_mc.stopDrag();
}
function setScrollPercent(event:Event):void
{
scrollPercent = (scroller_mc.y - line_mc.y) / (line_mc.height - scroller_mc.height);
if(scrollPercent < 0)
{
scrollPercent = 0;
}
else if(scrollPercent > 1)
{
scrollPercent = 1;
}
targetScroll = (scrollPercent * (maxScroll - minScroll)) + minScroll;
news_mc.y -= (news_mc.y - targetScroll) / easing;
}
function scrollUp(event:MouseEvent):void
{
setDirection(scrollAmt);
}
function scrollDown(event:MouseEvent):void
{
setDirection(-scrollAmt);
}
function setDirection(dir:Number):void
{
scrollDirection = dir;
stage.addEventListener(Event.ENTER_FRAME, scrollText);
stage.addEventListener(MouseEvent.MOUSE_UP, stopScrolling);
stage.removeEventListener(Event.ENTER_FRAME, setScrollPercent);
}
function scrollText(event:Event):void
{
targetScroll += scrollDirection;
news_mc.y -= (news_mc.y - targetScroll) / easing;
if(news_mc.y > minScroll)
{
news_mc.y = minScroll;
targetScroll = minScroll;
}
else if(news_mc.y < maxScroll)
{
news_mc.y = maxScroll;
targetScroll = maxScroll;
}
scrollPercent = (news_mc.y - minScroll) / (maxScroll - minScroll);
scroller_mc.y = (scrollPercent * (line_mc.height - scroller_mc.height)) + line_mc.y;
}
function stopScrolling(event:MouseEvent):void
{
scrollDirection = 0;
}
textLoader.load(textReq);
scroller_mc.buttonMode = true;
news_mc.news_txt.autoSize = TextFieldAutoSize.LEFT;
scroller_mc.addEventListener(MouseEvent.MOUSE_DOWN , dragScroller);
textLoader.addEventListener(Event.COMPLETE, textLoaded);
up_btn.addEventListener(MouseEvent.MOUSE_DOWN, scrollUp);
down_btn.addEventListener(MouseEvent.MOUSE_DOWN, scrollDown);
news_txt.styleSheet = style; 1120: Access of undefined property news_txt
news_txt.styleSheet = style; 1120: Access of undefined property news_txt
maxScroll = minScroll - news_mc.height + mask_mc.height;
Everything is named correctly but I think it is the external stylesheet that is causing some confusion. I copied the code from a Lynda.com tutorial which worked but I added css to the mix
stop();
var textLoader:URLLoader = new URLLoader();
var textReq:URLRequest = new URLRequest("text/news.txt");
var cssLoader:URLLoader = new URLLoader();
var cssRequest:URLRequest = new URLRequest("text/style.css");
var style:StyleSheet = new StyleSheet();
function textLoadedFunc(event:Event):void
{
cssLoader.load(cssRequest);
cssLoader.addEventListener(Event.COMPLETE, cssLoaded);
}
function cssLoaded(event:Event):void
{
style.parseCSS(cssLoader.data);
news_txt.styleSheet = style;
news_txt.htmlText = textLoader.data;
}
textLoader.load(textReq);
textLoader.addEventListener(Event.COMPLETE, textLoadedFunc);
//below is scrollbar stuff
var scrollPercent:Number = 0;
var minScroll:Number;
var maxScroll:Number;
var targetScroll:Number = news_mc.y;
var easing:Number = 5;
var scrollAmt:Number = 15;
var scrollDirection:Number = 0;
function textLoaded(event:Event):void
{
news_mc.news_txt.text = textLoader.data;
minScroll = news_mc.y;
maxScroll = minScroll - news_mc.height + mask_mc.height;
}
function dragScroller(event:MouseEvent):void
{
var dragX:Number = line_mc.x - scroller_mc.width/2 + 1;
var dragY:Number = line_mc.y;
var dragW:Number = 0;
var dragH:Number = line_mc.height - scroller_mc.height;
scroller_mc.startDrag(false, new Rectangle(dragX,dragY,dragW,dragH));
stage.addEventListener(MouseEvent.MOUSE_UP, stopDragging);
stage.addEventListener(Event.ENTER_FRAME, setScrollPercent);
stage.removeEventListener(Event.ENTER_FRAME, scrollText);
}
function stopDragging(event:MouseEvent):void
{
scroller_mc.stopDrag();
}
function setScrollPercent(event:Event):void
{
scrollPercent = (scroller_mc.y - line_mc.y) / (line_mc.height - scroller_mc.height);
if(scrollPercent < 0)
{
scrollPercent = 0;
}
else if(scrollPercent > 1)
{
scrollPercent = 1;
}
targetScroll = (scrollPercent * (maxScroll - minScroll)) + minScroll;
news_mc.y -= (news_mc.y - targetScroll) / easing;
}
function scrollUp(event:MouseEvent):void
{
setDirection(scrollAmt);
}
function scrollDown(event:MouseEvent):void
{
setDirection(-scrollAmt);
}
function setDirection(dir:Number):void
{
scrollDirection = dir;
stage.addEventListener(Event.ENTER_FRAME, scrollText);
stage.addEventListener(MouseEvent.MOUSE_UP, stopScrolling);
stage.removeEventListener(Event.ENTER_FRAME, setScrollPercent);
}
function scrollText(event:Event):void
{
targetScroll += scrollDirection;
news_mc.y -= (news_mc.y - targetScroll) / easing;
if(news_mc.y > minScroll)
{
news_mc.y = minScroll;
targetScroll = minScroll;
}
else if(news_mc.y < maxScroll)
{
news_mc.y = maxScroll;
targetScroll = maxScroll;
}
scrollPercent = (news_mc.y - minScroll) / (maxScroll - minScroll);
scroller_mc.y = (scrollPercent * (line_mc.height - scroller_mc.height)) + line_mc.y;
}
function stopScrolling(event:MouseEvent):void
{
scrollDirection = 0;
}
textLoader.load(textReq);
scroller_mc.buttonMode = true;
news_mc.news_txt.autoSize = TextFieldAutoSize.LEFT;
scroller_mc.addEventListener(MouseEvent.MOUSE_DOWN , dragScroller);
textLoader.addEventListener(Event.COMPLETE, textLoaded);
up_btn.addEventListener(MouseEvent.MOUSE_DOWN, scrollUp);
down_btn.addEventListener(MouseEvent.MOUSE_DOWN, scrollDown);