/// <summary> /// 初始化布局 /// </summary> /// <param name="r"></param> /// <param name="c"></param> public void InitLayout(int r, int c) { Layout = new int[Row, Col]; GameState = FiveGameState.Init; MaxPlayerCount = 2; int leftIndexWidth = Pixel; StartX = leftIndexWidth; StartY = TitleHeight + leftIndexWidth; int width = 0, height = 0; width = leftIndexWidth * 2 + Pixel * Col; height = TitleHeight + leftIndexWidth * 2 + Pixel * Row; if (LayoutMap != null) { this.Draw.Dispose(); LayoutMap.Dispose(); } //创建图片 LayoutMap = new Bitmap(width, height); Draw = Graphics.FromImage(LayoutMap); SolidBrush black = new SolidBrush(Color.Black); Pen p = new Pen(black, 2); //背景 Draw.FillRectangle(new SolidBrush(Color.White), new Rectangle(0, 0, width, height)); for (int i = 0; i <= Row; i++) { int posHei = StartY + i * Pixel; if (i != Row) { Draw.DrawString((i + 1).ToString(), new Font(FontFamily.GenericMonospace, 10), black, new PointF(0, posHei)); Draw.DrawString((i + 1).ToString(), new Font(FontFamily.GenericMonospace, 10), black, new PointF(LayoutMap.Width - leftIndexWidth, posHei)); } Draw.DrawLine(p, new Point(StartX, posHei), new Point(LayoutMap.Width - leftIndexWidth, posHei)); } for (int i = 0; i <= Col; i++) { int posWid = StartX + i * Pixel; if (i != Col) { Draw.DrawString((i + 1).ToString(), new Font(FontFamily.GenericMonospace, 10), black, new PointF(posWid, TitleHeight)); Draw.DrawString((i + 1).ToString(), new Font(FontFamily.GenericMonospace, 10), black, new PointF(posWid, LayoutMap.Height - leftIndexWidth)); } Draw.DrawLine(p, new Point(posWid, StartY), new Point(posWid, LayoutMap.Height - Pixel)); } }
/// <summary> /// 释放资源 /// </summary> public override void Dispose() { Draw.Dispose(); LayoutMap.Dispose(); }