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>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值