private void MenuBuild() { while (ModeTC.TabPages.Count < (int)(Z_mXML.MenuLength / Z_mXML.ItemsOnPage) + 1) { TabPage tp = new TabPage(); tp.BackColor = System.Drawing.Color.LightBlue; tp.Name = "tabPage" + (ModeTC.TabPages.Count + 1).ToString(); tp.Size = new System.Drawing.Size(310, 187); tp.Text = "стр. " + (ModeTC.TabPages.Count + 1).ToString() + " "; ModeTC.Controls.Add(tp); } for (int i = 0; i < Z_mXML.MenuLength; i++) { Button mb = new Button(); mb.BackColor = System.Drawing.Color.DarkOrange; mb.Font = new System.Drawing.Font("Courier New", 18F, System.Drawing.FontStyle.Bold); mb.Location = new System.Drawing.Point(5, 3 + (i % Z_mXML.ItemsOnPage) * 26); mb.Name = CONSTBUTTON + i.ToString(); mb.Size = new System.Drawing.Size(300, 24); mb.Text = Z_mXML.MenuLst(i, 1).PadRight(16, ' ') + "(" + (i % Z_mXML.ItemsOnPage + 1).ToString() + ")"; ModeTC.TabPages[(int)(i / Z_mXML.ItemsOnPage)].Controls.Add(mb); } }
private void FormMenu_KeyDown(object sender, KeyEventArgs e) { int keyValue = e.KeyValue; if (keyValue == 125) { keyValue = 193; } if (keyValue == 126) { keyValue = 194; } if (keyValue >= 49 && keyValue <= 57 && !Z_mXML.IsOTK) { int index = Z_mXML.ItemsOnPage * ModeTC.SelectedIndex + (keyValue - 48) - 1; foreach (Control ctrl in ModeTC.TabPages[ModeTC.SelectedIndex].Controls) { if (ctrl.Name == CONSTBUTTON + index.ToString()) { ctrl.BackColor = Color.DarkGreen; this.Refresh(); FormMain fm = new FormMain(); Z_mXML.ActionNumber = Convert.ToInt32(Z_mXML.MenuLst(index, 0)); fm.Text = Z_mXML.MenuLst(index, 1); Z_mXML.IsInit = Convert.ToBoolean(Z_mXML.MenuLst(index, 2)); Z_mXML.IsInputQuantity = Convert.ToBoolean(Z_mXML.MenuLst(index, 3)); Z_mXML.IsConfirm = Convert.ToBoolean(Z_mXML.MenuLst(index, 4)); fm.Owner = this; fm.Show(); ctrl.BackColor = Color.DarkOrange; this.Refresh(); } } } switch (keyValue) { case 8: //Back if (!Z_mXML.IsOTK) { this.Close(); } break; case 9: //Tab if (ModeTC.SelectedIndex == ModeTC.TabPages.Count - 1) { ModeTC.SelectedIndex = 0; } else { ModeTC.SelectedIndex++; } break; case 37: //Left if (ModeTC.SelectedIndex == 0) { ModeTC.SelectedIndex = ModeTC.TabPages.Count - 1; } else { ModeTC.SelectedIndex--; } break; case 39: //Right if (ModeTC.SelectedIndex == ModeTC.TabPages.Count - 1) { ModeTC.SelectedIndex = 0; } else { ModeTC.SelectedIndex++; } break; case 48: //KEY0 - настройки if (!Z_mXML.IsOTK) { FormSettings f0 = new FormSettings(); f0.Owner = this; f0.Show(); } break; case 27: //Esc - настройки if (Z_mXML.IsOTK) { FormSettings f0 = new FormSettings(); f0.Owner = this; f0.Show(); } break; } }