/// <summary> /// パネルを分割して子パネルをディクショナリに追加 /// </summary> /// <param name="g"></param> /// <param name="map"></param> public void CreateChildren(Graphics g, KeyMap map) { DicChildren = new Dictionary<string, GridPanel>(); for (var x = 0; x < map.Division.X; x++) { for (var y = 0; y < map.Division.Y; y++) { var key = map.GetKey(x, y); var panel = new GridPanel(this, g, map.Division, x, y, key); DicChildren.Add(key, panel); } } }
public void TestGridPanel() { using (var form = new Form()) { var g = form.CreateGraphics(); var panel = new GridPanel(new RootPanel(new Rectangle(0, 0, 1000, 1600)), g, new Point(5, 4), 3, 2, "x"); Assert.IsNotNull(panel.Parent); Assert.IsTrue(panel.HasParent); Assert.AreEqual(new Rectangle(600, 800, 200, 400), panel.Bounds); Assert.AreEqual(new Point(700, 1000), panel.CursorPoint); Assert.IsNull(panel.DicChildren); Assert.AreEqual(149, panel.FontSize); Assert.IsTrue(panel.IsOdd); panel.MapPosition.X = 0; Assert.IsFalse(panel.IsOdd); panel.CreateChildren(g, new FullMap()); var child = panel.DicChildren["f"]; Assert.AreEqual(new Rectangle(720, 880, 40, 80), child.Bounds); } }