Thursday, March 10, 2011

Getting below the minimum height for the spark combo box

Did you know that the spark combobox has a built in minimum height of 16? Trying to change that is a little tricky.

<?xml version="1.0" encoding="utf-8"?>
<s:ComboBox xmlns:fx="http://ns.adobe.com/mxml/2009" 
   xmlns:s="library://ns.adobe.com/flex/spark" 
   xmlns:mx="library://ns.adobe.com/flex/mx"
   >
 <fx:Declarations>
  <!-- Place non-visual elements (e.g., services, value objects) here -->
 </fx:Declarations>
 <fx:Script>
  <![CDATA[
   import mx.core.IUIComponent;
   import mx.core.UIComponent;
   import mx.events.FlexEvent;
   
   private var partArray:Array = new Array();




   protected override function childrenCreated():void
   {
    //TODO Auto-generated method stub
    super.childrenCreated();
    var len:int = partArray.length;
    var comp:UIComponent;
    //reset those pesky minimum heights
    for (var i:int = 0 ; i< len; i++)
    {
     comp = UIComponent(partArray[i])
     comp.explicitMinHeight = Math.min(height,comp.minHeight);
     comp.explicitMinWidth = Math.min(width, comp.minWidth);
    }
   }

   protected override function partAdded(partName:String, instance:Object):void
   {
    //TODO Auto-generated method stub
    super.partAdded(partName,instance);
    partArray.push(instance);
   }

   
  ]]>
 </fx:Script>
 
</s:ComboBox>

No comments:

Post a Comment