[2 days left] What’s wrong with your cloud strategy? Learn why multicloud solutions matter with Nimble Storage.Register Now

x
?
Solved

Using text in AS3 to gotoAndPlay a frame label

Posted on 2011-03-22
9
Medium Priority
?
1,344 Views
Last Modified: 2012-05-11
Hello, I'm working in Adobe Flash CS5/AS3 for the Mac.  I was wondering how I can use TLF or dynamic text to "gotoAndPlay" a frame label in my document.  There is an option to specify a link URL under the "Link" field, however, I need the text to jump to a frame label when it is clicked on, NOT open up a URL.

This text is also located within a movieclip that is already on the main timeline.  It would need to communicate with the main timeline and jump to a frame label on there.

I've worked around this before by creating buttons that jump to a different frame when they are clicked on, but I figured there's got to be an easier way to do this via text.

Thanks in advance.
0
Comment
Question by:DEPAdmin
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 5
  • 4
9 Comments
 

Author Comment

by:DEPAdmin
ID: 35198059
I noticed that the 2 links you posted are in reference to navigating to other html web pages.  I need to navigate to a "frame label" in my document on the main timeline from the inside of a movieclip.  Is it possible to do this?
0
 
LVL 17

Expert Comment

by:deepanjandas
ID: 35198146
I posted the links to show you how TextEvent works. Now in the event handler function user your script instead of navigateToURL.

Use gotoAndPlay("labelName");

Warm Regards
Deepanjan Das
0
VIDEO: THE CONCERTO CLOUD FOR HEALTHCARE

Modern healthcare requires a modern cloud. View this brief video to understand how the Concerto Cloud for Healthcare can help your organization.

 

Author Comment

by:DEPAdmin
ID: 35198506
I'm completely lost (I guess I should have mentioned I'm relatively new to programming lol).  I honestly don't understand the difference between public and private class, and I get the Syntax Error "package is unexpected."

Here's a break down of what I am trying to do.

- I have a text field on the stage already (not sure if it should be dynamic, or TLF text) with the instance name of "section1_txt", and the text on the stage reads "Section 1."
- When this text field is clicked on, I want it to gotoAndPlay the frame label named "s1summary" on the timeline.

Seems easy enough, but I wasn't sure if this was possible, or if I need to create a button instead to do what I need it to do.
0
 
LVL 17

Expert Comment

by:deepanjandas
ID: 35199396
Hope this helps :)
import flash.events.TextEvent;

field.htmlText="This is a test.";
field.addEventListener(TextEvent.LINK,clickin);

function clickin(evt:TextEvent):void
{
    trace(evt.text);
    gotoAndPlay("labelName");
}

Open in new window


Warm Regards
Deepanjan Das
0
 

Author Comment

by:DEPAdmin
ID: 35199508
I did try your code and it does place "This is a test" on the stage, however, it does not do anything when you try to click on it.

I was supposed to replace "field" with "section1_txt" correct?

Also, what kind of text should it be (TLF, dynamic, static, etc.)?

Thanks.
0
 

Author Comment

by:DEPAdmin
ID: 35199776
I played around with the code and got the following to work (when the user clicks on "Section 1" it takes them to the frame label "s1summary"...I changed it to a MouseEvent and it appears to work):
import flash.events.TextEvent;

section1_txt.htmlText="Section 1";
section1_txt.addEventListener(MouseEvent.CLICK,clickin);

function clickin(event:MouseEvent):void
{
    gotoAndPlay("s1summary");
}

Open in new window

0
 
LVL 17

Accepted Solution

by:
deepanjandas earned 2000 total points
ID: 35199851
What you did is made the whole text clickable.
TextEvent goes with when a word in the whole sentence needs to be only linked.

Like this:
import flash.events.TextEvent;

field.htmlText="This is a test <a href='event:labelName'>link</a>.";
field.addEventListener(TextEvent.LINK,clickin);

function clickin(evt:TextEvent):void
{
    trace(evt.text);
    gotoAndPlay(evt.text);
}

Open in new window


Warm Regards
Deepanjan Das
0
 

Author Comment

by:DEPAdmin
ID: 35200029
Ah OK, I get it now.  I tried out your code and that does work also.

Thanks for your help :)
0

Featured Post

Free Tool: Subnet Calculator

The subnet calculator helps you design networks by taking an IP address and network mask and returning information such as network, broadcast address, and host range.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Introduction This article is primarily concerned with ActionScript 3 and generally specific to AVM2.  Most suggestions would apply to ActionScript 2 as well, and I've noted those tips that differ between AS2 and AS3. With the advent of ActionS…
In this tutorial I will show you how to make a simple HTML bar chart with the usage of WhizBase, If you want more information about WhizBase please read my previous articles at http://www.experts-exchange.com/ARTH_5123186.html (http://www.experts-ex…
The goal of the tutorial is to teach the user how to how to load their YouTube profile onto Flash Media Live Encoder.
In this seventh video of the Xpdf series, we discuss and demonstrate the PDFfonts utility, which lists all the fonts used in a PDF file. It does this via a command line interface, making it suitable for use in programs, scripts, batch files — any pl…
Suggested Courses

649 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question