C#WinForm4张纸牌窗体设计
2012-11-20 16:01
274 查看
继前一篇"
C#玩4张纸牌小游戏
View Codepublic partial class Form2 : Form { private IList<Card> cards; private IList<Card> currentCards; public Form2 ( ) { InitializeComponent ( ); cards = new List<Card> (52); currentCards = new List<Card> (4); BuildCardData ( ); } private void BuildCardData ( ) { cards.Clear ( ); for (int i = 1; i <= 13; i++) { for (int j = 1; j <= 4; j++) { cards.Add (new Card ((Point) i, (Flower) j)); } } } private void Form2_Load ( object sender, EventArgs e ) { Reflesh ( ); RePaint ( ); } private void Reflesh ( ) { IList<Card> tmp = new List<Card> (cards); Random rd = new Random (); int intTmp = 0; for (int i = 0; i < 4; i++) { intTmp = rd.Next (1,52 - i - 1); if (currentCards.Count < i + 1) { currentCards.Add (new Card (Point.A, Flower.Flower)); #region MyRegion switch (i) { case 0: currentCards[i].gpPalette = Graphics.FromHwnd (pbFirst.Handle); break; case 1: currentCards[i].gpPalette = Graphics.FromHwnd (pbSecond.Handle); break; case 2: currentCards[i].gpPalette = Graphics.FromHwnd (pbThird.Handle); break; case 3: currentCards[i].gpPalette = Graphics.FromHwnd (pbFourth.Handle); break; default: break; } #endregion } currentCards[i].flower=tmp[intTmp].flower; currentCards[i].point = tmp[intTmp].point; tmp.RemoveAt (intTmp); } } private void btnReflesh_Click ( object sender, EventArgs e ) { Reflesh ( ); RePaint ( ); } private void RePaint ( ) { currentCards[0].Paint ( ); currentCards[1].Paint ( ); currentCards[2].Paint ( ); currentCards[3].Paint ( ); } private void pbFirst_Paint ( object sender, PaintEventArgs e ) { currentCards[0].Paint ( e.Graphics); } private void pbSecond_Paint ( object sender, PaintEventArgs e ) { currentCards[1].Paint (e.Graphics); } private void pbThird_Paint ( object sender, PaintEventArgs e ) { currentCards[2].Paint (e.Graphics); } private void pbFourth_Paint ( object sender, PaintEventArgs e ) { currentCards[3].Paint (e.Graphics); } }
相关文章推荐
- C#WinForm4张纸牌窗体设计补充后续Point类代码
- c#WinForm下窗体权限设计(遍历菜单下的所有菜单及所有form、form中的控件)
- C#WinForm窗体内Panel容器中嵌入子窗体、程序主窗体设计例子
- C# Winform学习---MDI窗体的设计,PictureBox控件(图片上一页下一页),Timer控件,MenuStrip控件
- C# winform进度条(异步) 窗体设计代码
- C#下WinForm编程:登录窗体的设计
- C#下WinForm编程:登录窗体的设计
- C# winform窗体设计-数据库连接
- C#下WinForm编程:登录窗体的设计
- C#--WinForm项目主窗体设计
- c# winform窗体边框风格的设计
- C#基础系列:开发自己的窗体设计器(实现控件的选择)
- C# WinForm 打印窗体
- 【原创】浅谈如何在C#Winform程序中正确使用登录窗体
- C# WinForm 如何实现窗体的关闭时温馨提示
- C# WinForm窗体及其控件自适应各种屏幕分辨率
- C# WinForm 窗体应用程序,调用 javascript 脚本
- (C#)WinForm窗体间传值
- C# Winform 窗体美化(九、嵌入窗体)
- C# WinForm 绘制圆角窗体