Silverlight+WCF 新手实例 象棋 棋子(三)
2010-07-07 13:15
225 查看
棋盘上有棋子,棋子应该还有一些属性,按原始冲动新建一个棋子类。
上google翻译下棋子E文叫什么,查到了叫Chessman,于是对着项目右键添加一个Chessman.cs
/// <summary>
/// 棋子类 by 路过秋天
///http://cyq1162.cnblogs.com/
/// </summary>
public class Chessman
{
}
乱七八糟:
想了想,要画棋子还是找图片好,图片也不是不好找,网上一搜还是有的,只是图片啊,算了,还是画棋子了,反正棋盘也是画出来的。于是想了想怎么画,先画一个圆圈,里面再画一个字。圆圈好说了,有个Ellipse类,设一下属性就得了。画字,于是又朝GDI+的方向想了,找什么DrawString,飞了半天也找不到方向,没办法,最后尘埃落定到了TextBlock上了。
这棋子都要有什么了,想了想,基本上得有的就是:
Name,有个名字,叫“兵”,“炮”,之类的名字
Color,不是红就是黑色了
Radius,棋子半径,这棋子总有个大小。
InitPoint,棋子的坐标位置
MovePoint,棋子总得会移动,移动后的位置。
好了,在类里敲入“prop"按两下Tab键,写好类型,按下Tab,起好名称,回车,一个属性就写完了,继续重复,于是有了以下代码:
public partial class MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
Board board = new Board();
board.DrawIn(canvas1);
Chessman chessman = new Chessman(0, 0, 15, Colors.Red, "车");
chessman.DrawIn(canvas1);
}
}
运行,看效果图,一个棋子就出来了:
好了,打完收工。下节再完成重点棋子的位置及点击事件。
上google翻译下棋子E文叫什么,查到了叫Chessman,于是对着项目右键添加一个Chessman.cs
/// <summary>
/// 棋子类 by 路过秋天
///http://cyq1162.cnblogs.com/
/// </summary>
public class Chessman
{
}
乱七八糟:
想了想,要画棋子还是找图片好,图片也不是不好找,网上一搜还是有的,只是图片啊,算了,还是画棋子了,反正棋盘也是画出来的。于是想了想怎么画,先画一个圆圈,里面再画一个字。圆圈好说了,有个Ellipse类,设一下属性就得了。画字,于是又朝GDI+的方向想了,找什么DrawString,飞了半天也找不到方向,没办法,最后尘埃落定到了TextBlock上了。
这棋子都要有什么了,想了想,基本上得有的就是:
Name,有个名字,叫“兵”,“炮”,之类的名字
Color,不是红就是黑色了
Radius,棋子半径,这棋子总有个大小。
InitPoint,棋子的坐标位置
MovePoint,棋子总得会移动,移动后的位置。
好了,在类里敲入“prop"按两下Tab键,写好类型,按下Tab,起好名称,回车,一个属性就写完了,继续重复,于是有了以下代码:
public partial class MainPage : UserControl
{
public MainPage()
{
InitializeComponent();
Board board = new Board();
board.DrawIn(canvas1);
Chessman chessman = new Chessman(0, 0, 15, Colors.Red, "车");
chessman.DrawIn(canvas1);
}
}
运行,看效果图,一个棋子就出来了:
好了,打完收工。下节再完成重点棋子的位置及点击事件。
相关文章推荐
- Silverlight+WCF 新手实例 象棋 棋子移动-线交叉点(六)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[兵、车](七)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[附加上半盘限制](十)
- Silverlight+WCF 新手实例 象棋 棋子移动-线交叉点(六)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[兵、车](七)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[将、马、士、相、炮](八)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则补充(三十七)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[附加上半盘限制](十)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[附加上半盘限制](十)
- Silverlight+WCF 新手实例 象棋 棋子(三)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[兵、车](七)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[将、马、士、相、炮](八)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则补充(三十七)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则补充(三十七)
- Silverlight+WCF 新手实例 象棋 棋子定位与象棋类(四)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则[将、马、士、相、炮](八)
- Silverlight+WCF 新手实例 象棋 棋子定位与象棋类(四)
- Silverlight+WCF 新手实例 象棋 棋子移动-吃子(五)
- Silverlight+WCF 新手实例 象棋 棋子移动-吃子(五)
- Silverlight+WCF 新手实例 象棋 棋子移动-规则补充(三十七)