Go Premium for a chance to win a PS4. Enter to Win

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,072 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
  • 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

How to Use the Help Bell

Need to boost the visibility of your question for solutions? Use the Experts Exchange Help Bell to confirm priority levels and contact subject-matter experts for question attention.  Check out this how-to article for more information.

Question has a verified solution.

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

Real-time is more about the business, not the technology. In day-to-day life, to make real-time decisions like buying or investing, business needs the latest information(e.g. Gold Rate/Stock Rate). Unlike traditional days, you need not wait for a fe…
It’s a strangely common occurrence that when you send someone their login details for a system, they can’t get in. This article will help you understand why it happens, and what you can do about it.
Learn how to set-up custom confirmation messages to users who complete your Wufoo form. Include inputs from fields in your form, webpage redirects, and more with Wufoo’s confirmation options.
Learn how to set-up PayPal payment integration in your Wufoo form. Allow your users to remit payment through PayPal upon completion of your online form. This is helpful for collecting membership payments, customer payments, donations, and more.

783 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