Complete example with 2 thumbs (from the earlier example): <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Script> <![CDATA[ import mx.collections.ArrayCollection; [Bindable] private var allProducts : Array = [ { name: "Datsun 120y", value : 1000 }, { name: "Nissan 350Z", value : 55000 }, { name: "Porsche GT3", value : 325000 }, { name: "HSV Clubsport", value : 79999 }, { name: "Mercedes SLR", value : 1200000 }, { name: "Lada Niva", value : 75 }, { name: "Ford Falcon XY GTHO", value : 375000 }, { name: "Batmobile", value : 654321 }, { name: "Ford Falcon XA GTHO", value : 2200000 }]; [Bindable] private var filteredList : ArrayCollection = new ArrayCollection(allProducts); private function updateFilter() : void { filteredList.filterFunction = myFilterFunction; filteredList.refresh(); } private function myFilterFunction(item : Object) : Boolean { return item.value >= Math.min(priceSlider.values[0],priceSlider.values[1]) && item.value <= Math.max(priceSlider.values[0],priceSlider.values[1]); } ]]> </mx:Script> <mx:DataGrid horizontalCenter="0" verticalCenter="0" width="410" height="354" dataProvider="{filteredList}"> <mx:columns> <mx:DataGridColumn headerText="Car Name" dataField="name"/> <mx:DataGridColumn headerText="Value" dataField="value"/> </mx:columns> </mx:DataGrid> <!--<mx:HSlider verticalCenter="-191" horizontalCenter="0" minimum="0" maximum="2000000" id="min" liveDragging="true" change="updateFilter()"/> <mx:HSlider verticalCenter="191" horizontalCenter="0" minimum="0" maximum="2000000" id="max" liveDragging="true" change="updateFilter()" value="2000000"/> <mx:Label text="Min" textAlign="right" width="117" horizontalCenter="-147" verticalCenter="-191"/> <mx:Label text="Max" textAlign="right" width="117" horizontalCenter="-147" verticalCenter="191"/>--> <mx:HSlider horizontalCenter="0" verticalCenter="-200" id="priceSlider" minimum="0" maximum="3000000" tickInterval="100000" snapInterval="10" thumbCount="2" values="[0,3000000]" tickColor="#ffffff" labels="[$0k,$3000000M]" liveDragging="true" width="182" change="updateFilter()"/> </mx:Application> On Thu, Aug 7, 2008 at 2:39 AM, Tim Hoff <[EMAIL PROTECTED]> wrote: > > And go back to your original filterFunction: > > if ( (city_cb.selectedLabel == "All" || item.city == > city_cb.selectedLabel) && (lct_cb.selectedLabel == "All" || > item.location == lct_cb.selectedLabel) && (item.value > > priceSlider.values[0] && item.value < priceSlider.values[1]) > ){ > result=true; > } > return result; > } > > priceSlider.values[3000000] doesn't exist. Then as Alex suggests, walk > through the code with the debugger, or trace. > > -TH > > --- In flexcoders@yahoogroups.com, "Tim Hoff" <[EMAIL PROTECTED]> wrote: > > > > > > Yeah shoot, my bad. Take the values property out of the tag. Should > > have said set the min to 0 and the max to 3,000,000 (like you have it. > > The "values" will lock the thumbs to those two positions (values) > only. > > > > -TH > > > > --- In flexcoders@yahoogroups.com, "Josh McDonald" dznuts@ wrote: > > > > > > Shows how often I use the sliders. I didn't know you could use > > multiple > > > thumbs... This is not performant, you should be getting the max and > > min > > > within updateFilter() and sticking them in private vars, not in the > > filter > > > function itself... but you get the idea. > > > > > > private function myFilterFunction(item : Object) : Boolean > > > { > > > return item.value >= > > > Math.min(priceSlider.values[0],priceSlider.values[1]) && item.value > <= > > > Math.max(priceSlider.values[0],priceSlider.values[1]); > > > } > > > > > > > > > On Wed, Aug 6, 2008 at 5:29 PM, stinasius stinasius@ wrote: > > > > > > > i managed to build a dual thumb slider that i pass on the filter > > > > function. here is the code. > > > > > > > > <mx:HSlider x="0" y="240" id="priceSlider" minimum="0" > > > > maximum="3000000" tickInterval="100000" snapInterval="10" > > > > thumbCount="2" values="[0,3000000]" tickColor="#ffffff" > > > > labels="[$0k,$3000000M]" liveDragging="true" width="182" > > > > change="filterGrid()"/> > > > > > > > > > > > > ------------------------------------ > > > > > > > > -- > > > > Flexcoders Mailing List > > > > FAQ: > > http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt > > > > Search Archives: > > > > http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! > > Groups > > > > Links > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > "Therefore, send not to know For whom the bell tolls. It tolls for > > thee." > > > > > > :: Josh 'G-Funk' McDonald > > > :: 0437 221 380 :: josh@ > > > > > > > > > > ------------------------------------ > > -- > Flexcoders Mailing List > FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt > Search Archives: > http://www.mail-archive.com/flexcoders%40yahoogroups.comYahoo! Groups > Links > > > > -- "Therefore, send not to know For whom the bell tolls. It tolls for thee." :: Josh 'G-Funk' McDonald :: 0437 221 380 :: [EMAIL PROTECTED]