C#开发WPF/Silverlight动画及游戏系列教程(Game Course):(二十一)主位式地图移动模式
2009-07-04 07:07:23 来源:WEB开发网//假如是地图/遮罩
QXMap Map = Carrier.Children[i] as QXMap;
Canvas.SetLeft(Map, 0);
Canvas.SetTop(Map, 0);
}
……
这样完美多了不是,嘿嘿,得瑟一下。
深蓝色!我还有问题!
更加深邃了我心中的理念:青春就是热血与激情!
深蓝色!我发誓这是最后一个问题:
你前面不是说游戏后期还会加入怪物(monster)、NPC(npc)等乱七八糟的东西,那么在判断的时候不是要这样写:
……
for (int i = 0; i < Carrier.Children.Count; i++) {
if (Carrier.Children[i] is QXSpirit) {
……
} else if (Carrier.Children[i] is QXMap) {
……
} else if (Carrier.Children[i] is QXMonster) {
……
} else if (Carrier.Children[i] is QXNpc) {
……
}
}
这不是没完没了了呀?而且这还是左上区域的实现代码,还有其他8个区域呢?维护起来不成了是典型的牵一发而动全身?
不提我还真差点给忘记了,如何将这些对象物体控件进行一个归类呢?分析:首先这些控件均为用户控件,用户控件继承自UserControl类;这道好了,在C#中只能单类继承,UserControl类在用户控件出生的时候就已经将这个尊位给踞为己有,哎,杂办可好??郁闷之时,接口天籁般的魔音再次缭绕于我的耳边:老大,还有我们捏!对呀!差点把软哥赐予我们神圣的接口姐妹给忘了。使用接口即可以对这众多的对象物体用户控件进行规范,又能被类一对多继承,很酷不是吗?
那么接下来我们添加一个接口取名叫:QXObject.cs,并对其进行如下设定:
Tags:开发 WPF Silverlight
编辑录入:爽爽 [复制链接] [打 印]- ››开发Android 日历教程
- ››开发学院总结 Win 8实用技巧大全
- ››开发学院原创教程:把win8的IE10放桌面上方法(非...
- ››silverlight全屏显示图片
- ››Silverlight MVVM 模式(一) 切近实战
- ››开发者眼中的Windows Phone和Android
- ››开发学院教你用SQL 语句最快速清空MySQL 数据表的...
- ››WPF学习笔记12. Binding (5)
- ››WPF学习笔记11. Binding (4)
- ››WPF学习笔记10. Binding (3)
- ››WPF学习笔记9. Binding (2)
- ››WPF学习笔记8. Binding
更多精彩
赞助商链接