// Initialization programm component private static void InitProgram() { // ComPort IrdaComPort = new IrdaPort(); //RegName RegName = new RegKeyName(); RegName.PortName = "PortName"; RegName.ShowMessage = "ShowMessage"; RegName.CmdName = new string[] { "CmdEnter", "CmdEsc", "CmdSpace", "CmdUp", "CmdDown", "CmdLeft", "CmdRight", "CmdPageUp", "CmdPageDown" }; // IrdaCommand IrdaCommand = new ArrayList(); IrdaCommand.Clear(); // Read RegKey ReadRegKeyValue(); // NotifyIcon, ContextMenuStript and ToolStripMenuItem IrdaNotifyIcon = new NotifyIcon(); IrdaContextMenu = new ContextMenuStrip(); IrdaMenuAbout = new ToolStripMenuItem(); IrdaSeparator1 = new ToolStripSeparator(); IrdaMenuConfigure = new ToolStripMenuItem(); IrdaMenuShowMsg = new ToolStripMenuItem(); IrdaSeparator2 = new ToolStripSeparator(); IrdaMenuExit = new ToolStripMenuItem(); // IrdaNotifyIcon.ContextMenuStrip = IrdaContextMenu; IrdaNotifyIcon.Icon = Properties.Resources.Irda_Remote_32px; IrdaNotifyIcon.Text = "Irda Remote Control"; // IrdaContextMenu.Items.AddRange(new ToolStripItem[] { IrdaMenuAbout, IrdaSeparator1, IrdaMenuConfigure, IrdaMenuShowMsg, IrdaSeparator2, IrdaMenuExit }); IrdaContextMenu.Name = "IrdaContextMenu"; IrdaContextMenu.Size = new System.Drawing.Size(153, 98); // IrdaMenuAbout.Name = "About"; IrdaMenuAbout.Size = new System.Drawing.Size(152, 22); IrdaMenuAbout.Text = "About"; IrdaMenuAbout.Click += new System.EventHandler(ShowAboutForm); // IrdaSeparator1.Name = "Separator1"; IrdaSeparator1.Size = new System.Drawing.Size(149, 6); // IrdaMenuConfigure.Name = "Configure"; IrdaMenuConfigure.Size = new System.Drawing.Size(152, 22); IrdaMenuConfigure.Text = "Configure..."; IrdaMenuConfigure.Click += new System.EventHandler(ShowConfigure); // IrdaMenuShowMsg.Name = "ShowMsg"; IrdaMenuShowMsg.Size = new System.Drawing.Size(152, 22); IrdaMenuShowMsg.Text = "Show message"; if (iShowMessage != 0) { IrdaMenuShowMsg.ForeColor = System.Drawing.Color.Blue; } IrdaMenuShowMsg.Click += new System.EventHandler(ShowMessage); // IrdaSeparator2.Name = "Separator2"; IrdaSeparator2.Size = new System.Drawing.Size(149, 6); // IrdaMenuExit.Name = "Exit"; IrdaMenuExit.Size = new System.Drawing.Size(152, 22); IrdaMenuExit.Text = "Exit"; IrdaMenuExit.Click += new System.EventHandler(ExitApplication); // IrdaNotifyIcon.Visible = true; // Create a timer with a 100 ms interval. tmrProgram = new System.Timers.Timer(); tmrProgram.Interval = 100; tmrProgram.Enabled = false; tmrProgram.Elapsed += new ElapsedEventHandler(tmrProgram_Tick); }
// Initialozation private void IrdaPortInit() { // Создаем екземпляр порта инициализированного в Program ComPort = Program.IrdaComPort; // Если в Program запущен таймер, то выключаем его if (Program.isTimerEnable) { Program.isTimerEnable = false; } // считываем порты установленные на компе foreach (string s in ComPort.PortList) { cbPortName.Items.Add(s); } // если нашли хоть один if (cbPortName.Items.Count != 0) { if (Program.isAppFirstStart) { // инициализируем первый в списке, при этом вызывается событие cbPortName_SelectedIndexChanged cbPortName.SelectedIndex = 0; btPortOpenClose.Enabled = true; Program.isAppFirstStart = false; } else { // ищем в найденых портах тот, что сконвигурирован при запуске // и если не нашли, инициализируем как в первый раз string strName = Program.PortName; int i = cbPortName.FindString(strName, 0); if (i != -1) { cbPortName.SelectedIndex = i; } else { cbPortName.SelectedIndex = 0; } // Если порт открыт, то запускаем таймер и меняем свойства элементов if (ComPort.isOpen) { tmrConfigure.Enabled = true; btPortOpenClose.Text = "Close"; btPortOpenClose.Enabled = true; gbPortName.Enabled = false; } else { btPortOpenClose.Enabled = true; } } } else { // не найдено ни одго порта - ... StatusLabel.Text = ComPort.Status; StatusLabel.ForeColor = Color.Red; gbPortName.Enabled = false; } // Считываем команды int index = 0; foreach (string s in Program.IrdaCommand) { gbCommandList.Controls[index].Text = s; index++; } }