`
wanglu271991027
  • 浏览: 90599 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

flex4 分页通用组件

    博客分类:
  • flex
 
阅读更多
1.新建一个 vbox
代码如下
<?xml version="1.0" encoding="UTF-8"?>
<mx:VBox  xmlns:fx="http://ns.adobe.com/mxml/2009"
	 xmlns:s="library://ns.adobe.com/flex/spark"   
	 xmlns:mx="library://ns.adobe.com/flex/mx"
	   width="100%" height="100%">
	<fx:Script>
		<![CDATA[
 			import mx.controls.Alert;
			import mx.rpc.events.AbstractEvent;
			import mx.controls.dataGridClasses.DataGridColumn;
			import mx.collections.ArrayCollection;	 		
			import mx.effects.easing.*;	
			
			[Bindable]
			public var dataSource:ArrayCollection=new ArrayCollection();//存放数据源
			[Bindable]
			public var dataColumn:Array;//存放列
			[Bindable]
			public var totalPage:int;//总页数
			[Bindable]
		    public var totalRecords:int;//一共有多少条
		    [Bindable]
			public var currentPage:int=1;/*当前页*/
			[Bindable]
			public var rowsPerPage:int=1;//一页显示多少条

			protected function pgup_clickHandler(event:MouseEvent):void
			{			
				currentPage--;		
				if(currentPage<=0)
				{
					currentPage=1;
				}
				this.dispatchEvent(new Event("pageChangeEvent"));
			}

			protected function pgdn_clickHandler(event:MouseEvent):void
			{
				currentPage++;
				this.dispatchEvent(new Event("pageChangeEvent"));
			}
           
			protected function firstPage_clickHandler(event:MouseEvent):void
			{
				currentPage=1;
				this.dispatchEvent(new Event("pageChangeEvent"));
			}

			protected function lastPage_clickHandler(event:MouseEvent):void
			{
				currentPage=totalPage;
				this.dispatchEvent(new Event("pageChangeEvent"));
			}
			protected function go_clickHandler(event:MouseEvent):void
			{
				if(pageTxt.value>0&&pageTxt.value<=totalPage){
					currentPage=pageTxt.value;
					this.dispatchEvent(new Event("pageChangeEvent"));
				}else{
				   Alert.show("请输入合法的数字");
				}
			}
		]]>
	</fx:Script>
	<fx:Metadata>
		[Event(name="pageChangeEvent",type="flash.events.Event")]		 
	</fx:Metadata>
	
		<mx:DataGrid width="100%" height="100%" id="dataGrid"      dataProvider="{dataSource}" columns="{dataColumn}">	
	</mx:DataGrid>
	
	
	<mx:HBox width="100%" height="5%" paddingRight="10"   id="hBox"  verticalAlign="middle"  horizontalAlign="right"> 
		<mx:Button label="首页" id="firstPage" enabled="{currentPage==1?false:true}" click="firstPage_clickHandler(event)" />
	    
	    <mx:Button label="上一页" id="pgup" enabled="{currentPage>1?true:false}" click="pgup_clickHandler(event)"/>
		<mx:Button label="下一页"  id="pgdn" enabled="{currentPage>=totalPage?false:true}" click="pgdn_clickHandler(event)"/>
		<mx:Button label="尾页" id="lastPage" enabled="{currentPage==totalPage?false:true}" click="lastPage_clickHandler(event)" />
		<mx:Label     id="pageDetail" text="共{totalRecords}条记录    第{currentPage}页/共{totalPage}页" x="591"/>
		<s:NumericStepper   id="pageTxt" maximum="{totalPage}"  value="1" stepSize="1."   x="787" width="52"/>
		<mx:Button label="GO"    id="go" click="go_clickHandler(event)"/>
</mx:HBox>
<fx:Declarations>
<!--
<s:Sequence id="sequence" target="{dataGrid}">
       
	    <mx:Move xBy="{width}" duration="2000" easingFunction="Bounce.easeOut"/>
            <mx:Pause duration="100"/>
        <mx:Move  xBy="{-width}" duration="2000" easingFunction="Bounce.easeIn"/>
	    

</s:Sequence>-->
<!--实现转-->
<!-- <s:Rotate3D id="sequence" 
          
          angleYFrom="0" angleYTo="360"
          duration="100" autoCenterTransform="true"
          />-->
  
</fx:Declarations>
</mx:VBox>


里有分页 有显示记录条数 跟总页数
2.在引用界面 开 xmlns:util="com.relonger.cclj.util.*"
如图:

在要显示的地方加上如下代码
	<util:CommDataGrid id="codg"  pageChangeEvent="codg_pageChangeEventHandler(event)" dataSource="{dp}" width="100%" height="100%">
				<util:dataColumn>
<!-- 这个是编号自动增长的-->
					<!--<mx:DataGridColumn headerText="label" dataField="label">
					<mx:itemRenderer>
					<fx:Component >
					<mx:Label text="{this.outerDocument.genrowno(data)}" />
					</fx:Component>
					</mx:itemRenderer>			
					</mx:DataGridColumn>-->
					<mx:DataGridColumn headerText="label" dataField="label"/>
					<mx:DataGridColumn headerText="d1" dataField="d1"/>
					<mx:DataGridColumn headerText="d2" dataField="d2"/>
					<mx:DataGridColumn headerText="d3" dataField="d3"/>
					<mx:DataGridColumn headerText="d4" dataField="d4"/>
					<mx:DataGridColumn headerText="d5" dataField="d5"/>
				</util:dataColumn>
			</util:CommDataGrid>

(1)dp 为数组源
(2)codg_pageChangeEventHandler 为组件里面挷定的函数 里面所有的操体做都是靠他来完成的  在codg_pageChangeEventHandler 方法里同向后吧传值 需要给后台传要显示当前是第几页 每页显示的记录条数 在反回的方法里面要给三个数付值

(3)编号 方法如下
public function genrowno(ob:Object):String
			{
				return String((codg.dataGrid.dataProvider as ArrayCollection).getItemIndex(ob)+1);
			} 

dp =  new ArrayCollection([{"d1":"","d2":"","d3":"","d4":"","d5":"66.38","label":"平江区"},{"d1":"","d2":"","d3":"25.46","d4":"","d5":"24.46","label":"沧浪区"},{"d1":"57.82","d2":"21.24","d3":"","d4":"","d5":"","label":"高新区"},{"d1":"","d2":"51.72","d3":"","d4":"","d5":"","label":"吴中区"},{"d1":"","d2":"","d3":"69.16","d4":"","d5":"","label":"金阊区"},{"d1":"","d2":"39.48","d3":"","d4":"","d5":"","label":"相城区"}]);
codg.totalPage=20; // 一共有多少页
codg.totalRecords=100//一共有多少条记录  

整体页面分格如下


请大家多多指点
  • 大小: 25.2 KB
  • 大小: 101.2 KB
分享到:
评论

相关推荐

    Flex 分页组件,flex自定义组件

    4. **数据绑定**:Flex分页组件需要与数据源进行绑定,以便根据分页信息加载相应的数据。数据源可以是XML、ArrayCollection或其他适合的数据结构。在切换页面时,组件会根据当前页数和每页记录数来获取对应范围的...

    Flex4 分页组件

    在实际开发中,我们可以通过以下步骤来创建和使用Flex4分页组件: 1. 引入`Pagination`类: 在MXML文件中,你需要导入`mx.controls.Pagination`,然后在界面上声明该组件。 ```xml ``` 2. 配置分页组件: 你...

    Flex4分页组件源码

    这个“Flex4分页组件源码”提供了在Flex4环境中实现分页功能的源代码,这对于开发大型数据集的用户界面至关重要。分页允许用户逐步浏览大量数据,而无需一次性加载所有内容,提高了应用程序的性能和用户体验。 在...

    Flex 分页控件组件

    标题"Flex分页控件组件"暗示了这个压缩包可能包含一个预封装好的分页组件,可能是一个自定义的Flex组件或者一个第三方库,比如mx.controls.Paginator类。这个组件通常会提供基本的分页功能,如页码显示、跳转至指定...

    flex通用分页控件

    Flex通用分页控件是基于Adobe Flex框架开发的一种组件,用于在Web应用程序中实现数据的分页显示。Flex是一个开放源代码的、基于XML的编程语言,主要用于构建富互联网应用程序(Rich Internet Applications,RIA)。...

    flex分页工具条组件

    使用Flex的响应式设计原则,可以创建适应各种屏幕尺寸的分页组件。 9. **国际化与本地化**:如果应用需要支持多语言,分页工具条的文本(如“上一页”、“下一页”等)需要可配置,以适应不同的语言环境。 综上所...

    flex分页 很好很强大

    在实际应用中,开发者可以利用各种前端框架和库来实现Flex分页,例如React、Vue或Angular都有相应的组件库,如React Paginate、Vue Paginate或ngx-pagination。这些库通常提供丰富的配置选项,使得定制和集成更加...

    flex4 选择树组件

    在Flex4中,选择树组件(Tree)是用户界面中常用的一种控件,它允许用户以层级结构展示数据,并进行选择操作。这个组件特别适合展现具有层次关系的数据,如文件系统、组织架构或者产品分类等。 在Flex4中,Tree组件...

    Flex4自定义组件开发.pdf

    ### Flex4自定义组件开发详解 #### 一、Flex4自定义组件概述 Flex4(也称为Spark)是Adobe Flex框架的一个重要版本,它引入了许多新的特性,包括改进的组件库、性能优化以及更好的可定制性。在Flex4中,自定义组件...

    flex 分页

    在Flex中,可以使用`mx.controls.Pagination`类或者自定义分页组件来实现高级功能,例如动态加载数据、显示页码选择器等。同时,还可以利用`mx.rpc.events.ResultEvent`和`mx.rpc.events.FaultEvent`处理服务端数据...

    flex分页控件的使用

    在Flex开发中,分页控件是用于展示大量数据时必不可少的一个组件,它允许用户以较小的数据块(每页)浏览整个数据集,从而提高用户体验并减轻服务器负载。本篇文章将详细讲解如何在Flex中创建和使用分页控件。 首先...

    flex datagrid分页 动态绑定数据源

    在涉及分页时,Datagrid通常与一个分页组件(如PagingNavigator)配合使用,以实现对大量数据的分块加载,提高应用性能。分页功能使得用户可以在不一次性加载所有数据的情况下浏览数据集,减轻了服务器的负担并提升...

    Flex 联想ComboBox通用组件(可识别汉语拼音和汉字)

    1.采用ActionScript3.0...4.精简算法,能够秒出内容。 5.带有注释。 6.可再渲染。 注:3个as文件放在同一目录或者包下,包引用记得自己改下。 在Flex 可视化编辑界面直接拖出就行。 有问题或者BUG 可联系QQ:408955289

    Flex4的组件信息

    详解Flex4的系统组件与基本组件。让你在应用的时候知道用什么.

    flex4自定义组件皮肤

    - Flex4引入了Spark组件模型,相对于MX组件,Spark组件更加强调可定制性,允许开发者更自由地设计组件外观。 2. **创建自定义皮肤** - 使用Flex SDK中的Skin类或MXML来创建自定义皮肤。皮肤通常包含一组显式状态...

    flex datagrid 前台 分页

    Flex DataGrid是一款强大的数据展示组件,常用于Adobe Flex或Flash Builder等开发环境中。它能够高效地展示大量数据,并提供丰富的用户交互功能。在本场景中,我们关注的是“前台分页”这一技术。 前台分页是指在...

    Flex 开发学习笔记4 - 应用分页列表组件

    Flex开发学习笔记4主要关注的是如何在Flex应用中实现分页列表组件,这对于构建大型数据展示界面至关重要。Flex是一个开源的、基于ActionScript的框架,用于创建富互联网应用程序(RIA)。在这里,我们不仅会探讨Flex...

    FLEX DATA GRID 分页

    为了提供更好的用户体验,开发者可以根据需要自定义分页组件的外观和交互,例如改变按钮样式,添加“跳转到指定页”功能等。 8. **集成服务器端**: 在实际应用中,数据通常来源于服务器。因此,客户端分页逻辑...

    Flex分页显示实例

    6. **自定义组件**:如果默认的分页组件不能满足需求,开发者可能需要自定义分页组件,以实现特定的样式、行为或交互。 7. **响应式设计**:考虑到多设备兼容性,分页组件需要适应不同的屏幕尺寸。使用Flex的布局...

    SimPager Flex分页组件

    重写的Flex分页组件,改进了一些BUG,原版的源码丢了,又重写了一个,所以没有版本之分 recordCount//记录总数,程序对该属性赋值生成分页 currentPageIndex//当前页 pageSize//每页记录数 buttonConut//显示的...

Global site tag (gtag.js) - Google Analytics