案例学习BlazeDS+Spring之六InSync04打开多个联系人
2011-10-14 15:39
519 查看
InSync04:打开多个联系人
一、运行DEMO:
1、运行程序:http://localhost:8400/spring-flex-testdrive/insync04/index.html;
2、单击Search按钮,从数据库获取所有的联系人。
3、在Search文本框输入几个字符,单击“Search”按钮,按名字来查找联系人。
4、双击DataGrid里的某个联系人将为打开独立的Tab,重复这个操作可以打开多个Tab。
5、在Contact窗体里编辑联系人,单击“Save"保存修改。
二、理解代码:
1、insync04.mxml:
insync04与insync03差不多,就是增加了TabNavigator控件来显示多个不同的联系人窗体。
public function openContact(contact:Contact):void
{
var children:Array = tn.getChildren();
for (var i:int = 0; i<children.length; i++)
{
if (ContactForm(children[i]).contact.id == contact.id)
{
tn.selectedChild = children[i];
return; //如果窗体已打开,则返回。
}
}
var form:ContactForm = new ContactForm();
tn.addChild(form);
form.contact = contact;
tn.selectedChild = form;
}
2、DataGrid的双击事件
还有点要注意的是,DataGrid的双击事件要启用。
<mx:DataGrid id="dg" dataProvider="{contacts}" width="30%" height="100%"
doubleClickEnabled="true"
doubleClick="openContact(dg.selectedItem as Contact)">
3、ContactForm.mxml:
增加了“Close”按钮,从父对象中移除自己。
<s:Button label="Close" click="parent.removeChild(this)"/>
三、小结:
本DEMO与InSync03类似,只是通过TabNavigator来显示多个contact窗体,后台代码没有改动。
来自:http://blog.sina.com.cn/s/blog_67532f7c0100or1p.html
一、运行DEMO:
1、运行程序:http://localhost:8400/spring-flex-testdrive/insync04/index.html;
2、单击Search按钮,从数据库获取所有的联系人。
3、在Search文本框输入几个字符,单击“Search”按钮,按名字来查找联系人。
4、双击DataGrid里的某个联系人将为打开独立的Tab,重复这个操作可以打开多个Tab。
5、在Contact窗体里编辑联系人,单击“Save"保存修改。
二、理解代码:
1、insync04.mxml:
insync04与insync03差不多,就是增加了TabNavigator控件来显示多个不同的联系人窗体。
public function openContact(contact:Contact):void
{
var children:Array = tn.getChildren();
for (var i:int = 0; i<children.length; i++)
{
if (ContactForm(children[i]).contact.id == contact.id)
{
tn.selectedChild = children[i];
return; //如果窗体已打开,则返回。
}
}
var form:ContactForm = new ContactForm();
tn.addChild(form);
form.contact = contact;
tn.selectedChild = form;
}
2、DataGrid的双击事件
还有点要注意的是,DataGrid的双击事件要启用。
<mx:DataGrid id="dg" dataProvider="{contacts}" width="30%" height="100%"
doubleClickEnabled="true"
doubleClick="openContact(dg.selectedItem as Contact)">
3、ContactForm.mxml:
增加了“Close”按钮,从父对象中移除自己。
<s:Button label="Close" click="parent.removeChild(this)"/>
三、小结:
本DEMO与InSync03类似,只是通过TabNavigator来显示多个contact窗体,后台代码没有改动。
来自:http://blog.sina.com.cn/s/blog_67532f7c0100or1p.html
相关文章推荐
- 案例学习BlazeDS+Spring之六InSync04打开多个联系人
- 案例学习BlazeDS+Spring之三InSync01查找联系人
- 案例学习BlazeDS+Spring之三InSync01查找联系人
- 案例学习BlazeDS+Spring之十:Chat
- 案例学习BlazeDS+Spring之十一:Simple Data Push
- 案例学习BlazeDS+Spring之一(
- 案例学习BlazeDS+Spring之十二:Traderdesktop
- 案例学习BlazeDS+Spring之十二:Traderdesktop
- 案例学习BlazeDS+Spring之十四:Collaboration
- 案例学习BlazeDS+Spring之十一:Simple Data Push
- 案例学习BlazeDS+Spring之十:Chat(
- 案例学习BlazeDS+Spring之四InSync02使用RemoteObject事件
- 案例学习BlazeDS+Spring之九Company Manager
- 案例学习BlazeDS+Spring之一
- 案例学习BlazeDS+Spring之四InSync02使用RemoteObject事件
- 案例学习BlazeDS+Spring之九Company Manager
- Spring学习(三)—— 自动装配案例分析
- Spring AOP代理的学习案例
- Spring学习-02:入门案例
- Android案例学习——新建联系人