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
3,043 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 500 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

PeopleSoft Has Never Been Easier

PeopleSoft Adoption Made Smooth & Simple!

On-The-Job Training Is made Intuitive & Easy With WalkMe's On-Screen Guidance Tool.  Claim Your Free WalkMe Account Now

Question has a verified solution.

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

Suggested Solutions

Title # Comments Views Activity
Automatic Image Uploading 9 100
How to transfer folders (PC-based) from a USB external HD to an iPad Air 2? 3 110
Reason for High TTFB 1 102
Partnership Agreement 2 45
Foreword (July, 2015) Since I first wrote this article, years ago, a great many more people have begun using the internet.  They are coming online from every part of the globe, learning, reading, shopping and spending money at an ever-increasing ra…
These days, all we hear about hacktivists took down so and so websites and retrieved thousands of user’s data. One of the techniques to get unauthorized access to database is by performing SQL injection. This article is quite lengthy which gives bas…
This video teaches users how to migrate an existing Wordpress website to a new domain.
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.

710 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