Flex的简单实现.docx
- 文档编号:8829989
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:49
- 大小:64.95KB
Flex的简单实现.docx
《Flex的简单实现.docx》由会员分享,可在线阅读,更多相关《Flex的简单实现.docx(49页珍藏版)》请在冰豆网上搜索。
Flex的简单实现
本人在学习flex的过程中的一些简单实现
简单列表实现
xmlversion="1.0"encoding="utf-8"?
>
Applicationxmlns: mx="layout="absolute"creationComplete="setValue();"> Script> [CDATA[ importmx.controls.Alert; publicvardataArray: Array; publicfunctionsetValue(): void{ dataArray=[{sid: "1001",name: "张三",password: "001"},{sid: "1002",name: "李四",password: "004"}]; mydata.dataProvider=dataArray; } ]]> Script> Panelx="167.5"y="26"width="468"height="275"layout="absolute"title="列表"horizontalAlign="center"verticalAlign="middle"> DataGridx="10"y="7"width="404"height="218"id="mydata"> columns> DataGridColumnheaderText="序号"dataField="sid"/> DataGridColumnheaderText="姓名"dataField="name"/> DataGridColumnheaderText="密码"dataField="password"/> DataGridColumnheaderText="炒作"> itemRenderer> Component> LinkButtonlabel="炒作"click=""> LinkButton> Component> itemRenderer> DataGridColumn> columns> DataGrid> Panel> Application> 下拉选择(demo) xmlversion="1.0"encoding="utf-8"? > Applicationxmlns: mx="layout="absolute"creationComplete="setvalue();"> Script> [CDATA[ importmx.controls.Alert; publicfunctiongetValue(): void{ Alert.show("你选择的是: "+myValue.text); } privatevarmydata: Array=newArray(); publicfunctionsetvalue(): void{ mydata.push("aaaaaaaaaaaa"); mydata.push("bbbbbbbbbbbb"); mydata.push("ccccccccccc"); } ]]> Script> ComboBoxx="203"y="150"id="myValue"dataProvider="{mydata}"> ComboBox> Buttonx="396"y="150"label="选择"enabled="true"click="getValue();"> Button> Application> 弹出窗口(说明+demo) (1)提示 你需要先导入Alert类: importmx.controls.Alert; 然后在想要弹出警告的时候使用: Alert.show(“你确定要退出系统吗? ”,“确认”,Alert.YES|Alert.NO,null,logout) 参数说明: 第一个参数是要显示的文本,第二个参数是窗口的标题,这两个参数是最经常用的。 第三个参数是按钮,默认是两个: YEW和NO,当然你也可以自定义,比如Alert.CANCEL,第四个参数是父窗口,默认为null。 第五个参数是窗口关闭后调用的函数名,如果你想要在点击确定之后触发什么事件,就需要定义这个参数。 这里我要调用logout,请注意,不要在这里写logout()。 (没有括号)logout函数如下: privatefunctionlogout(event: CloseEvent): void { if(event.detail==Alert.YES) { } } 因为这个函数是触发的,所以参数是一个CloseEvent。 “event.detail==Alert.YES”这行代码判断点击的是不是确定按钮。 CloseEvent中的detail属性专门判断点击了哪个按钮,这样就可以用户的点击控制代码。 Demo (1) xmlversion="1.0"encoding="utf-8"? > Applicationxmlns: mx="layout="absolute"> Buttonx="411"y="207"label="关闭"click="closeWindow();"/> Script> [CDATA[ importmx.events.CloseEvent; importmx.controls.Alert; publicfunctioncloseWindow(): void{ Alert.show("你确定要退出系统吗? ","提示",Alert.YES|Alert.NO,null,logout); } privatefunctionlogout(event: CloseEvent): void{ if(event.detail==Alert.YES){ Alert.show("你已退出系统! "); }else{ Alert.show("我点错了,我还要玩! "); } } ]]> Script> Application> Demo (2) 需要使用一个类,那就是PopUpManager,同样,使用前你需要先导入: 1.importmx.managers.PopUpManager; 然后你就要创建一个Compoment作为Flex弹出窗口,这个没什么特别的,创建一个普通的Compoment就行,这里我创建了一个文件叫做PopWindow,就是一个简单的Canvas。 代码如下: PopWindow.mxml: xmlversion="1.0"encoding="utf-8"? > Canvasxmlns: mx="width="500"height="400"> Script> [CDATA[ importmx.managers.PopUpManager; ]]> Script> Imagex="201"y="69"source="file: ///C|/Users/Administrator/Desktop/未命名.jpg" width="131"height="134"/> Buttonx="172"y="267"label="确定"click=""/> Buttonx="317"y="267"label="取消"click="PopUpManager.removePopUp(this)"/> Canvas> 其中removePopUp是PopUpManager的一个方法,就是移除当前弹出的窗口,这里我设置了点击取消移除Flex弹出窗口。 接下来我们在主程序中创建并Flex弹出窗口: xmlversion="1.0"encoding="utf-8"? > Applicationxmlns: mx="layout="absolute"> Buttonx="411"y="207"label="打开窗口"click="openWindow();"/> Script> [CDATA[ importmx.managers.PopUpManager; publicfunctionopenWindow(): void{ varpop: PopWindow=PopWindow(PopUpManager.createPopUp(this,PopWindow,true)); } ]]> Script> Application> 这就完成了,这个pop是一个PopWindow(就是刚才创建的Component的文件名)类型的变量,由于PopUpManager的createPopUp返回的是一个IFlexDisplayObject,你需要将其强制转换成为PopWindow类型才能赋值给pop变量。 下面详细说明一下createPopUp的这几个参数: 第一个参数是弹出窗口的父窗体,这个相信大家都明白。 第二个参数是弹出窗口的类名,也就是组件的文件名,在Flex中一个MXML文件也对应一个类。 PopUpManager是根据这个类来创建弹出对话框。 第三个参数是模态标记。 如果是true,就创建一个模态对话框;否则创建的就是一个非模态的对话框。 单选钮的实现 xmlversion="1.0"encoding="utf-8"? > Applicationxmlns: mx="layout="absolute"> Panelx="271"y="70"width="250"height="200"layout="absolute"title="你的最爱"> RadioButtonx="10"y="22"label="美人"value="我爱美人"id="option1"click="getMyLovers(option1);"groupName="myradio"/> RadioButtonx="63"y="22"label="江山"value="我爱江山"id="option2"click="getMyLovers(option2);"groupName="myradio"/> Panel> Script> [CDATA[ importmx.controls.Alert; /*获取RadioButton的value属性的值 publicfunctiongetMyLovers(option: RadioButton): void{ Alert.show(option.value.toString()); }*/ /*获取RadioButton的lable属性的值*/ publicfunctiongetMyLovers(option: RadioButton): void{ Alert.show(option.label); } ]]> Script> Application> 普通的文本域得值 通过id的text属性获值 Demo: xmlversion="1.0"encoding="utf-8"? > Applicationxmlns: mx="layout="absolute"> TextInputx="294.5"y="10"id="myinput"/> TextAreax="294"y="70"id="myArea"/> Buttonx="333"y="196"label="value"click="getvalue();"/> Script> [CDATA[ importmx.controls.Alert; functiongetvalue(): void{ Alert.show(myArea.text); } ]]> Script> Application> Flex3+java简单的增删查改 (1)数据库连接 packageutil; importjava.sql.Connection; importjava.sql.DriverManager; publicclassDbConnection{ privateStringurl="jdbc: oracle: thin: @192.168.1.66: 1521: ORCL"; privateStringusername="dhec"; privateStringpassword="dhec"; privateStringdriver="oracle.jdbc.driver.OracleDriver"; privateConnectionconn=null; publicConnectiongetConnection(){ try{ Class.forName(driver); conn=DriverManager.getConnection(url,username,password); }catch(Exceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } returnconn; } publicstaticvoidmain(String[]args){ System.out.println(newDbConnection().getConnection()); } } (2)实体的编写: packageentriy; publicclassCompany{ privateStringrecordId; privateStringcompanyId; privateStringcompanyName; publicStringgetCompanyId(){ returncompanyId; } publicvoidsetCompanyId(StringcompanyId){ panyId=companyId; } publicStringgetCompanyName(){ returncompanyName; } publicvoidsetCompanyName(StringcompanyName){ panyName=companyName; } publicStringgetRecordId(){ returnrecordId; } publicvoidsetRecordId(StringrecordId){ this.recordId=recordId; } } (3)DAO的编写 packagemyflex; importjava.sql.Connection; importjava.sql.PreparedStatement; importjava.sql.ResultSet; importjava.sql.SQLException; importjava.sql.Statement; importjava.util.ArrayList; importjava.util.List; importentriy.Company; importutil.DbConnection; publicclassFlexDemo{ Listlist=newArrayList(); Connectionconn=null; //查找所有 publicListgetAllCompany(){ DbConnectiondb=newDbConnection(); Statementst=null; ResultSetrs=null; conn=db.getConnection(); try{ Stringsql="select*fromGGSJ_COMPANY"; st=conn.createStatement(); rs=st.executeQuery(sql); while(rs.next()){ Companycompany=newCompany(); company.setRecordId(rs.getString (1)); company.setCompanyId(rs.getString(3)); company.setCompanyName(rs.getString(4)); list.add(company); } }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); }finally{ try{ if(st! =null){ st.close(); } if(rs! =null){ rs.close(); } if(conn! =null){ conn.close(); } }catch(SQLExceptione){ e.printStackTrace(); } } returnlist; } //删除 publicStringdelCompany(Companycompny){ DbConnectiondb=newDbConnection(); Stringsql="deletefromGGSJ_COMPANYwhereRECORD_ID=? "; conn=db.getConnection(); PreparedStatementps=null; try{ ps=conn.prepareStatement(sql); ps.setString(1,compny.getRecordId()); ps.executeUpdate(); }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } try{ if(ps! =null){ps.close();} if(conn! =null){conn.close();} }catch(SQLExceptione){ //TODOAuto-generatedcatchblock e.printStackTrace(); } return""; } //查找单个 publicCompanygetOneCompany(Companycompany){ DbConnectiondb=newDbConnection(); Statementst=null; ResultSetrs=null; conn=db.getConnection(); try{ Stringsql="select*fromGGSJ_COMPANYwhereRECORD_ID='"+company.getRecordId()+"'"; st=conn.createStatement(); rs=st.executeQuery(sql); if(rs.next()){ company.setRecordId(rs.getString (1)); company.setCompanyId(rs.getString(3)); company.setCompanyName(rs.getString(4)); } }catch(SQLExceptione){ e.printStackTrace(); }finally{ try{ if(st! =null){ st.close(); } if(rs! =null){ rs.close(); } if(conn! =null){ conn.close(); } }catch(SQLExceptione){ e.printStackTrace(); } } returncompany; } //修改 publicStringupdate(Companycompany){ DbConnectiondb=newDbConnection(); Stringsql="updateGGSJ_COMPANYsetCOMP
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Flex 简单 实现