Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

In Flex/Actionscript, how do I change the highlighted roll-over and selection background color of the top-level menubar buttons for a <mx:MenuBar> component?

Posted on 2008-06-10
5
Medium Priority
?
3,061 Views
Last Modified: 2010-04-21
I have a Flex application where I need to be able to change the highlighted roll-over and selection background color of the top-level menubar buttons for a <mx:MenuBar> component.  I already tried using the "rollOverColor" and "selectionColor" styles, but these seem to be applied to the drop-down/popup submenu items, not the actual top-level menubar.  Also, some of the buttons on the menubar are of type "separator", which act as spacers between menubar buttons.  Ideally, I would like to be able to turn off any roll-over/selection effects for the "separator" spacers on the main menubar as well.
<mx:Style>
        .mainMenu {
            color: #FFFFFF;
            fontWeight: bold;
        }               
        .subMenu {
            fontSize: 13;
            color: #ffffff;
            backgroundColor: #000000;
            borderSides: top, bottom, right, left;
            borderThickness: 1px;
            borderColor: #ffffff;
            fontWeight: normal;
        }               
</mx:Style>
 
<mx:MenuBar id="mainMenuBar" styleName="mainMenu" menuStyleName="subMenu"
            labelField="label" fontSize="15"
            click="handleMenuBarClickEvent(mainMenuBar.selectedIndex);" 
            itemClick="handleSubMenuBarClickEvent(event);" 
            dataProvider="{menuBarArrayCollection}">
    <mx:backgroundSkin>
        @Embed(source='com/project/images/layout/menu-bar.gif')
    </mx:backgroundSkin>
</mx:MenuBar>
 
//this is a regular menubar button in object format, supplied in the dataprovider
{label:"Home", data:1, children:[]}
 
//this is a separator for the menubar in object format
{label:"", type:"separator"}

Open in new window

0
Comment
Question by:robbersrow
[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
  • 3
  • 2
5 Comments
 
LVL 19

Expert Comment

by:Gary Benade
ID: 21757119
You can't do that with styles, you need to use skins. I'll see if I can find you an example
0
 

Author Comment

by:robbersrow
ID: 21758001
Any examples would be greatly appreciated.
0
 

Author Comment

by:robbersrow
ID: 21766637
Instead of changing the background skin, another option would be to change the text/font color.  However, none of the styles, such as "rollOverColor" and such, seem to work.  Do you happen to have any ideas as far as this goes?
0
 
LVL 19

Accepted Solution

by:
Gary Benade earned 2000 total points
ID: 21767036
I have to go to a meeting and I'm late so this is a pretty dumb example (I used the paypal logo as a skin) but it shows the concept

You'll have to add a skin for itemSkin and itemUpSkin too
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" >
	<mx:Style>
		MenuBar
		{
			color: #FF0000;
			selectedColor: #00FF00;
			itemOverSkin: Embed("https://www.paypal.com/en_US/i/btn/btn_xpressCheckout.gif");			
		}
	</mx:Style>
	<mx:XMLList id="mainMenu">
        <menuitem label="File" >
            <menuitem label="Open Calendar" data="load">
	            <menuitem label="Logout" data="logout" />
	        </menuitem>
        </menuitem>
    </mx:XMLList>	
    <mx:MenuBar styleName="test" id="mm" labelField="@label" dataProvider="{mainMenu}" />
</mx:Application>

Open in new window

0
 

Author Closing Comment

by:robbersrow
ID: 31465651
This is what i was looking for.  Sorry for the delay in closing this solution.  Thank you for your help.
0

Featured Post

Hire Technology Freelancers with Gigs

Work with freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely, and get projects done right.

Question has a verified solution.

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

Introduction HyperText Transfer Protocol (http://www.ietf.org/rfc/rfc2616.txt) or "HTTP" is the underpinning of internet communication.  As a teacher of web development I have heard many questions, mostly from my younger students who have come to t…
While opting for any web-to-print solution, you need to discuss with your team and some of your end users and know their opinions about your decisions. In this article we list down some questions you need to ask yourself.
This video teaches viewers how to create their own website using cPanel and Wordpress. Tutorial walks users through how to set up their own domain name from tools like Domain Registrar, Hosting Account, and Wordpress. More specifically, the order in…
This video teaches users how to migrate an existing Wordpress website to a new domain.

722 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