Flex 부모-자식 창은 서로 구현 아이디어와 소스 코드를 호출합니다.
1. 디자인 아이디어
(1) 자식 창이 부모 창을 호출하는 방법
(2) 자식 창을 수정한 후 부모 창으로 돌아가서 부모 창은 자식 창 함수를 호출합니다
2. 디자인 소스 코드
(1) 부모 창
ParentWindow.mxml:
<?xml version="1.0" encoding="utf-8"?> <s:Application 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%"> <s:layout> <s:BasicLayout/> </s:layout> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.managers.PopUpManager; [Bindable] //表格数据源绑定 private var grid:ArrayCollection = new ArrayCollection([ {number:"2014010101",name:"张散",sex:"男",age:"23"}, {number:"2014010102",name:"李思",sex:"女",age:"22"}, {number:"2014010101",name:"吴王",sex:"男",age:"21"}, {number:"2014010101",name:"赵柳",sex:"女",age:"20"}, {number:"2014010101",name:"游华",sex:"男",age:"22"}, {number:"2014010101",name:"祝思",sex:"女",age:"18"}, {number:"2014010101",name:"周礼",sex:"男",age:"19"}, {number:"2014010101",name:"华捷",sex:"女",age:"20"}, {number:"2014010101",name:"刘亮",sex:"男",age:"22"}, {number:"2014010101",name:"沈雪",sex:"女",age:"21"} ]); /*修改事件函数*/ protected function updateHandler(event:MouseEvent):void { //新建子窗体对象 var childWindow:ChildWindow = new ChildWindow(); //将子窗体添加到PopUpManager中 PopUpManager.addPopUp(childWindow,this,true); //向子窗体传递参数 childWindow.age = "23"; //子窗口调用父窗口函数 childWindow.callBack = this.myFunction; //子窗体居中弹出 PopUpManager.centerPopUp(childWindow); } /*刷新函数*/ public function myFunction(you:String):void { Alert.show(you+"Hello"); } ]]> </fx:Script> <mx:VBox width="100%" height="100%" paddingBottom="10" paddingLeft="10" paddingRight="10" paddingTop="10"> <mx:DataGrid id="dataGrid" dataProvider="{grid}" rowCount="{grid.length + 1}" width="100%" verticalAlign="middle" textAlign="center"> <mx:columns> <mx:DataGridColumn headerText="学号" dataField="number"/> <mx:DataGridColumn headerText="姓名" dataField="name"/> <mx:DataGridColumn headerText="性别" dataField="sex"/> <mx:DataGridColumn headerText="年龄" dataField="age"/> </mx:columns> </mx:DataGrid> <mx:HBox width="100%" horizontalAlign="center" verticalAlign="middle"> <s:Button label="修改" click="updateHandler(event)"/> </mx:HBox> </mx:VBox> </s:Application>
로그인 후 복사
(2) 하위 창
ChildWindow.mxml:
<?xml version="1.0" encoding="utf-8"?> <s:TitleWindow 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="300" height="220" close="closeHandler(event)" title="修改窗口"> <s:layout> <s:BasicLayout/> </s:layout> <fx:Script> <![CDATA[ import mx.events.CloseEvent; import mx.managers.PopUpManager; //回调函数 public var callBack:Function; public var age:String = ""; /*关闭事件函数*/ protected function closeHandler(event:CloseEvent):void { PopUpManager.removePopUp(this); } /*修改按钮事件函数*/ protected function updateHandler(event:MouseEvent):void { stuAge.text = age; } /*取消按钮事件函数*/ protected function cancelHandler(event:MouseEvent):void { number.text = ""; stuName.text = ""; PopUpManager.removePopUp(this); if(isPopUp) { callBack.call(parent); } } ]]> </fx:Script> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <mx:VBox width="100%" height="100%"> <mx:Form> <mx:FormItem label="学号:"> <s:TextInput id="number" width="200" maxChars="10"/> </mx:FormItem> <mx:FormItem label="姓名:"> <s:TextInput id="stuName" width="200" maxChars="10"/> </mx:FormItem> <mx:FormItem label="性别:"> <mx:HBox width="100%"> <mx:RadioButtonGroup id="sex"/> <s:RadioButton groupName="sex" label="男" selected="true"/> <s:RadioButton groupName="sex" label="女"/> </mx:HBox> </mx:FormItem> <mx:FormItem label="年龄:"> <s:TextInput id="stuAge" width="200" maxChars="2"/> </mx:FormItem> <mx:FormItem> <mx:HBox width="100%"> <s:Button label="修改" click="updateHandler(event)"/> <s:Label width="42"/> <s:Button label="取消" click="cancelHandler(event)"/> </mx:HBox> </mx:FormItem> </mx:Form> </mx:VBox> </s:TitleWindow>
로그인 후 복사
3. 디자인 결과
(1) 초기화 중
(2) 수정 버튼을 한 번 클릭하세요.
Flex 부모 방법에 대한 더 많은 아이디어와 소스 코드 관련 기사를 보려면 -자식창이 서로 호출되니 PHP 중국어 홈페이지를 주목해주세요!
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
어 ass 신 크리드 그림자 : 조개 수수께끼 솔루션
1 몇 주 전
By DDD
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
3 몇 주 전
By 尊渡假赌尊渡假赌尊渡假赌
Atomfall에서 크레인 제어 키 카드를 찾을 수 있습니다
1 몇 주 전
By DDD

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제
Gmail 이메일의 로그인 입구는 어디에 있나요?
7416
15


Cakephp 튜토리얼
1359
52


Steam의 계정 이름 형식은 무엇입니까?
76
11


Win11 활성화 키 영구
26
19

