`
JadeLuo
  • 浏览: 428119 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

Flex分页显示实例

    博客分类:
  • Flex
 
阅读更多

 

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"  creationComplete="application1_creationCompleteHandler(event)"
			   xmlns:s="library://ns.adobe.com/flex/spark" 
			   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
	<s:layout>
		<s:VerticalLayout verticalAlign="middle" horizontalAlign="center"/>
	</s:layout>

	<fx:Script>
		<![CDATA[
			import comp.add;
			import comp.infoWindow;
			
			import mx.collections.ArrayCollection;
			import mx.controls.Alert;
			import mx.events.CloseEvent;
			import mx.events.FlexEvent;
			import mx.managers.PopUpManager;
			import mx.rpc.events.ResultEvent;
			[Bindable]
			private var all:int=0;
			[Bindable]
			private var step:int=10;
			[Bindable]
			private var count:int=0;
			private var k:int=10;
			[Bindable]
			private var dp:ArrayCollection=new ArrayCollection();;
			protected function remoteobject1_resultHandler2(event:ResultEvent):void
			{
				if(int(event.result)==1){
					remote1.getInfo(0,10);
				}
			}
			protected function remoteobject1_resultHandler3(event:ResultEvent):void
			{
				if(int(event.result)==1){
					remote1.getInfo(0,10);
				}
			}
			protected function remoteobject1_resultHandler(event:ResultEvent):void
			{
				var arr:ArrayCollection=event.result as ArrayCollection;
				dp.removeAll();
				all=int(arr[arr.length-1]);
				if(arr.length<=11){
					k=arr.length-1;
				}
				for(var i:int=0;i<k;i++){
					var o:Object=new Object();
					o.num=arr[i][0];
					o.pic=arr[i][1];
					o.name=arr[i][2];
					o.sex=arr[i][3];
					o.age=arr[i][4];
					o.department=arr[i][5];
					o.job=arr[i][6];
					o.birthday=arr[i][7];
					o.comeday=arr[i][8];
					o.education=arr[i][9];
					o.workage=arr[i][10];
					o.id=arr[i][11];
					o.tel=arr[i][12];
					o.home=arr[i][13];
					o.edu=arr[i][14];
					o.hobby=arr[i][15];
					o.etc=arr[i][16];
					dp.addItem(o);
				}
			}
			protected function remoteobject1_faultHandler(event:FaultEvent):void
			{
				// TODO Auto-generated method stub
			}
			protected function remoteobject1_faultHandler2(event:FaultEvent):void
			{
				// TODO Auto-generated method stub
			}
			protected function remoteobject1_faultHandler3(event:FaultEvent):void
			{
				// TODO Auto-generated method stub
			}
			import mx.rpc.events.FaultEvent;

			protected function application1_creationCompleteHandler(event:FlexEvent):void
			{
				remote1.getInfo(0,10);
			}


			protected function button1_clickHandler(event:MouseEvent):void
			{
				var a:add=new add();
				PopUpManager.addPopUp(a,this);
				PopUpManager.centerPopUp(a);
			}
			private function qetInfomation (s:int,e:int):void{
				remote1.getInfo(s,e);
			}

			protected function button2_clickHandler(event:MouseEvent):void
			{
				qetInfomation((count-1)*step,step);
				count=count-1;
			}


			protected function button3_clickHandler(event:MouseEvent):void
			{
				qetInfomation((count+1)*step,step);
				count=count+1;
			}


			protected function button4_clickHandler(event:MouseEvent):void
			{
				if(dg.selectedItem==null){
					return ;
				}else{
					Alert.show("确定删除该记录吗?","提示",1|2,this,CHandler);
				}
			}
			private function CHandler(e:CloseEvent):void{
				if(e.detail==Alert.YES){
					var o:Object=dg.selectedItem;
					remote2.deleteItem(int(o.num));
				}else{
					return ;
				}
			}
			public function saveItem(names:String,age:int,sex:String,tel:String,dept:String,job:String,birthday:String,comeday:String,workage:int,ids:String,home:String,edu:String,hobby:String,etc:String):void{
				remote3.saveItem(names,age,sex,tel,dept,job,birthday,comeday,workage,ids,home,edu,hobby,etc);
			}
			public function open(o:Object):void{
				var w:infoWindow=new infoWindow();
				PopUpManager.addPopUp(w,this);
				PopUpManager.centerPopUp(w);
				w.data=o;
			}
			
			private function toFirstPage(event:MouseEvent):void{
				qetInfomation(0,step);
				count=0;
			}
			
			private function toLastePage(event:MouseEvent):void{
				count=(all+(10-all%step))/step-1;
				qetInfomation(count*step,count*step+all%step);
			
			}

		]]>
	</fx:Script>
	<fx:Declarations>
		<s:RemoteObject destination="main" fault="remoteobject1_faultHandler(event)"
		 result="remoteobject1_resultHandler(event)" id="remote1"/>
		<s:RemoteObject destination="main" fault="remoteobject1_faultHandler2(event)"
						result="remoteobject1_resultHandler2(event)" id="remote2"/>
		<s:RemoteObject destination="main" fault="remoteobject1_faultHandler3(event)"
						result="remoteobject1_resultHandler3(event)" id="remote3"/>
	</fx:Declarations>
	<mx:DataGrid width="100%" height="280" id="dg" dataProvider="{dp}">
		<mx:columns>
			<mx:DataGridColumn headerText="编号" dataField="num"/>
			<mx:DataGridColumn headerText="姓名" dataField="name">
				<mx:itemRenderer>
					<fx:Component>
						<mx:LinkButton label="{data.name}" click="this.outerDocument.open(data);" >
						</mx:LinkButton>
					</fx:Component>
				</mx:itemRenderer>
			</mx:DataGridColumn>
			<mx:DataGridColumn headerText="性别" dataField="sex"/>
			<mx:DataGridColumn headerText="年龄" dataField="age"/>
			<mx:DataGridColumn headerText="所在部门" dataField="department"/>
			<mx:DataGridColumn headerText="职务" dataField="job"/>
		</mx:columns>
	</mx:DataGrid>
	<mx:HBox verticalAlign="middle" horizontalAlign="center" height="30" width="100%">
		<s:Label text="共有:"/>
		<s:Label text="{all}"/>
		<s:Label text="条记录"/>
		<s:Label text="当前第:"/>
		<s:Label text="{count+1}"/>
		<s:Label text="页"/>
		<s:Button label="增加" click="button1_clickHandler(event)"/>
		<s:Button label="第一页" enabled="{count>0?true:false}" click="toFirstPage(event)"/>
		<s:Button label="上一页" enabled="{count>0?true:false}" click="button2_clickHandler(event)"/>
		<s:Button label="下一页" enabled="{(count+1)*step>all?false:true}" click="button3_clickHandler(event)"/>
		<s:Button label="最后页" enabled="{(count+1)*step>all?false:true}" click="toLastePage(event)"/>
		<s:Button label="删除" click="button4_clickHandler(event)"/>
		
	</mx:HBox>
</s:Application>

 import java.sql.*;

import java.util.ArrayList;
import java.util.List;

import javax.swing.text.html.HTMLDocument.HTMLReader.PreAction;
public class HR {
	Connection c=null;
	Statement s=null;
	String url="jdbc:mysql://localhost:3306/company?user=root&password=rootcode";
	public List getInfo(int start,int end){
		List r=new ArrayList<Array>();
		String temp [];
		try{
			Class.forName("com.mysql.jdbc.Driver");
		}catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		try{
			c=DriverManager.getConnection(url);
			s=c.createStatement();
			String sql="select * from user where visible=1 order by num limit "+start+","+end+";";
			System.out.print(sql);
			ResultSet rs=s.executeQuery(sql);
			while(rs.next()){
				temp=new String[17];
				temp[0]=rs.getString("num");
				temp[1]=rs.getString("pic");
				temp[2]=rs.getString("name");
				temp[3]=rs.getString("sex");
				temp[4]=rs.getString("age");
				temp[5]=rs.getString("department");
				temp[6]=rs.getString("job");
				temp[7]=rs.getString("birthday");
				temp[8]=rs.getString("comeday");
				temp[9]=rs.getString("education");
				temp[10]=rs.getString("workage");
				temp[11]=rs.getString("id");
				temp[12]=rs.getString("tel");
				temp[13]=rs.getString("home");
				temp[14]=rs.getString("edu");
				temp[15]=rs.getString("hobby");
				temp[16]=rs.getString("etc");
				r.add(temp);
			}
			Statement ss=c.createStatement();
//			c.prepareStatement(sql)
			String sql2="select count(*) as 'all' from user where visible=1;";
			ResultSet rs2=ss.executeQuery(sql2);
			while(rs2.next()){
				r.add(rs2.getInt("all"));
			}
			
		}catch (SQLException e) {
			e.printStackTrace();
			// TODO: handle exception
		}
		return r;
	}
	public int deleteItem(int i){
		int result=0;
		try{
			Class.forName("com.mysql.jdbc.Driver");
		}catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		try{
			c=DriverManager.getConnection(url);
			s=c.createStatement();
			String sql="update user set visible=0 where num = "+i+";";
			System.out.print(sql);
			s.execute(sql);
			result=1;
			
		}catch (SQLException e) {
			e.printStackTrace();
			// TODO: handle exception
		}
		return result;
	}
	public int saveItem(String names,int age,String sex,String tel,String dept,String job,String birthday,String comeday,int workage,String ids,String home,String edu,String hobby,String etc){
		int result=0;
		try{
			Class.forName("com.mysql.jdbc.Driver");
		}catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		try{
			c=DriverManager.getConnection(url);
			String pic=getMax()+".jpg";
			System.out.print(pic);
			String sql="insert into user values (null,?,?,?,?,?,?,?,?,null,?,?,?,?,?,?,?,1);";
			PreparedStatement pr=c.prepareStatement(sql);
			System.out.println(sql);
			pr.setString(1,pic);
			pr.setString(2,names);
			pr.setString(3, sex);
			pr.setInt(4, age);
			pr.setString(5, dept);
			pr.setString(6, job);
			pr.setString(7, birthday);
			pr.setString(8, comeday);
			pr.setInt(9, workage);
			pr.setString(10, ids);
			pr.setString(11, tel);
			pr.setString(12, home);
			pr.setString(13, edu);
			pr.setString(14, hobby);
			pr.setString(15, etc);
			System.out.println(sql);
			pr.execute();
			result=1;
			
		}catch (SQLException e) {
			e.printStackTrace();
			// TODO: handle exception
		}
		return result;		
	}
	public static int getMax(){
		int result=0;
		try{
			Class.forName("com.mysql.jdbc.Driver");
		}catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
		try{
			String url1="jdbc:mysql://localhost:3306/company?user=root&password=rootcode";
			Connection cc=DriverManager.getConnection(url1);
			Statement ss=cc.createStatement();
			String sql="select MAX(num) as 'max' from user;";
			System.out.print(sql);
			ResultSet rs=ss.executeQuery(sql);
			while(rs.next()){
				result=rs.getInt("max");
				result=result+1;
			}	
		}catch (SQLException e) {
			e.printStackTrace();
			// TODO: handle exception
		}
		return result;
	}

}

 <?xml version="1.0" encoding="UTF-8"?>

<service id="remoting-service" 
    class="flex.messaging.services.RemotingService">

    <adapters>
        <adapter-definition id="java-object" class="flex.messaging.services.remoting.adapters.JavaAdapter" default="true"/>
    </adapters>

    <default-channels>
        <channel ref="my-amf"/>
    </default-channels>
	<destination id="main">
	<properties>
	<source>HR</source>
	</properties>
	</destination>
</service>
分享到:
评论

相关推荐

    flex 分页控件

    综上所述,创建一个自定义的Flex分页控件涉及到组件设计、事件处理、数据绑定、皮肤化等多个方面。通过深入理解和实践这些知识点,开发者可以构建出功能强大、易于使用的分页工具,提升应用的用户体验。提供的文件...

    flex通用分页控件

    Flex通用分页控件是基于Adobe Flex框架开发的一种组件,用于在Web应用程序中实现数据的分页显示。Flex是一个开放源代码的、基于XML的编程语言...PagingToolProject则可能是一个用于学习和实践Flex分页功能的实例项目。

    flex 分页控件,通过事件处理

    1. **创建PagingToolbar实例**:`&lt;mx:PagingToolbar id="pagingToolbar" dataProvider="{dataProvider}" /&gt;`,这里`dataProvider`是数据源,它告诉分页控件有多少数据和每页应显示多少条。 2. **设置属性**:可以...

    FLEX datagrid应用实例

    在本文中,我们将深入探讨基于Adobe Flex的DataGrid组件的应用实例。Flex是一种强大的富互联网应用程序(RIA)开发框架,主要用于构建交互式、响应式的Web应用。DataGrid是Flex中的一个核心组件,它允许开发者以表格...

    Flex报表导出实例.zip

    它们用于显示从服务器获取的数据,并可以进行排序、过滤和分页等操作。报表导出则涉及到将这些可视化的数据转换为另一种格式,以便用户可以保存或打印。 在这个实例中,我们可以预期包含以下关键知识点: 1. **...

    flex的分页技术

    ### Flex的分页技术 #### 一、引言 随着Web应用的发展,用户对数据展示的需求越来越高,特别是在处理大量数据时,如何优雅地实现数据的分页显示成为了开发者必须掌握...希望这篇文章能对你学习Flex分页技术有所帮助。

    flex3 分页示例

    你需要在.mxml文件中导入必要的库,然后在界面上实例化Pagination控件,设置其属性,如总页数和每页显示的数据量。 3. **数据绑定**:将数据模型与展示组件(如DataGrid)绑定,同时将分页控件的事件(如...

    分页技术 一个关于页面显示数据分页的实例 付源码

    在这个"分页技术 一个关于页面显示数据分页的实例 付源码"的案例中,我们将深入探讨如何使用jsp、html和css实现一个简单的BBS论坛数据分页。 首先,让我们了解分页的基本概念。分页是将大量数据分割成小块,每次只...

    flex datagrid doubleclick 实例

    它可以显示多列数据,并支持排序、分页和选择等交互功能。DataGrid通常与数据提供者结合使用,如ArrayCollection或XMLListCollection,来展示动态数据。 2. **双击事件(doubleclick)**: Flex中的事件处理机制...

    flex datagrid分页 动态绑定数据源

    在Flex开发中,Datagrid是不可或缺的一个组件,它主要用于展示大量结构化数据,提供了一种交互式的表格形式来显示和操作数据。本篇文章将深入探讨“flex datagrid分页动态绑定数据源”的相关知识点。 首先,让我们...

    flex datagrid 分页控件源码

    - **DataGrid数据源**:设置`pagination`属性为`Pagination`实例,使得DataGrid根据分页控件的设置来显示数据。 - **事件监听**:监听`change`事件,当用户更改分页设置时,更新DataGrid的数据源。 - **数据模型*...

    flex java实例

    实例中的Flex界面可能包含以下组件:表单(Form)用于用户输入,数据网格(DataGrid)展示查询结果,按钮(Button)触发操作,以及可能的提示信息(Alert)显示操作结果。 6. MXML与ActionScript: MXML是Flex的...

    Flex前台分页

    3. **Flex分页实现**: - 数据集(ArrayCollection):在Flex中,通常使用ArrayCollection作为数据源,它是Array的子类,支持数据绑定和事件处理。 - 分页组件:Flex提供了一些内置的分页组件,如DataGrid和List,...

    flex datagrid分页

    在本示例中,我们关注的是“flex datagrid分页”这一主题,它涉及到如何在DataGrid中实现数据的分页显示,以便用户可以有效地浏览大量数据。 分页是大型数据集管理中的关键功能,它允许用户一次只查看一部分数据,...

    Flex 3 组件实例与应用(2009版)

    DataGrid组件是一种用于显示表格数据的容器,支持排序、分页等功能。 ##### 5. **HorizontalList** HorizontalList组件可以水平排列其子项,适合制作水平滚动的列表或菜单。 ##### 6. **HRule** HRule组件用于...

    Flex组件MecGridWizard实例代码

    Header部分可以定制列头,Body用于显示数据行,Footer则常用于显示分页或总计信息。 2. **数据绑定**:MecGridWizard与数据源进行绑定,通常使用ArrayCollection或XMLListCollection等数据集合类。通过设置data...

    上一篇的flex的远程对象调用,flex和spring集成分页的jar和截图

    2. 创建Flex RemoteObject:在Flex端,创建一个RemoteObject实例,指定其目的地为Spring服务的URL。 3. 定义服务接口:在Spring服务端,定义接口并实现分页查询的方法。 4. 调用服务:在Flex客户端,通过...

    Flex explorer组件使用实例

    以下是对Flex Explorer组件使用实例的详细说明。 1. **组件介绍** Flex是Adobe开发的一种富互联网应用程序(RIA)框架,它基于ActionScript编程语言和Flash Player或Adobe AIR运行时环境。Explorer组件是Flex库中...

    自己写的分页 flex datagrid 及一些其他东西 flexbuilder 项目源文件

    在Flex中,Datagrid是常用的数据展示控件,常用于显示大量结构化的数据,而分页则是为了优化用户体验,使得用户可以更高效地浏览大量信息。 描述中的信息进一步确认了这是一个包含Flex Builder项目源文件的集合,...

Global site tag (gtag.js) - Google Analytics