private void textBox2_TextChanged(object sender, EventArgs e)//限制对输入字符的长度的设置 { str_count = 0; string str = textBox2.Text; for (int i = 0; i < textBox2.Text.Length; i++) { if ((int)str[i] > 127)//判断输入的字符是否是中文字符 { str_count++; } } textBox2.MaxLength = 54 - str_count; if (str.Equals("液晶拼接控制系统") || str.Equals("LCD Splicing Control System")) { settingFile.WriteBool("SETTING", "NameFlag", false); } else { settingFile.WriteBool("SETTING", "NameFlag", true); } }
/// <summary> /// 确认串口设置信息,并保存至文件中。 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void bt_confirm_Click(object sender, EventArgs e) { if (f.TCPCOM) { if (textBox_IP.Text == "" || textBox_Port.Text == "") { string ts = languageFile.ReadString("ONOFFFORM", "T4", "设置的IP地址和端口不能为空!"); string tp = languageFile.ReadString("MESSAGEBOX", "TP", "提示"); MessageBox.Show(ts, tp); return; } if (checkBox3.Checked) { f.PJLink_Pro = true; } else { f.PJLink_Pro = false; } if (IsIP(textBox_IP.Text)) { if (combo_netpro.SelectedIndex == 0) { f.TCPServer = new IOCPServer(IPAddress.Parse(textBox_IP.Text), int.Parse(textBox_Port.Text), (int)numericUpDown1.Value); } else if (combo_netpro.SelectedIndex == 1) { f.TCPClient = new client(IPAddress.Parse(textBox_IP.Text), int.Parse(textBox_Port.Text)); } else { f.UDPClient = new System.Net.Sockets.UdpClient(); } f.IP = IPAddress.Parse(textBox_IP.Text); f.PORT = int.Parse(textBox_Port.Text); } else { string ts = languageFile.ReadString("ONOFFFORM", "T5", "IP 地址信息不正确!"); string tp = languageFile.ReadString("MESSAGEBOX", "TP", "提示"); MessageBox.Show(ts, tp); } } else { if (cb_port1.Text.Equals("") || cb_baudRate1.Text.Equals("")) { string ts = languageFile.ReadString("ONOFFFORM", "T1", "串口1设置不能为空!"); string tp = languageFile.ReadString("MESSAGEBOX", "TP", "提示"); MessageBox.Show(ts, tp); return; } //串口设置和打开 String portName; int baudrate; if (cb_multiCom.SelectedIndex == 0)//选的dan串口 { portName = cb_port1.Text; baudrate = int.Parse(cb_baudRate1.Text); f.PortName = portName; f.BaudRate = baudrate; f.uMultiComPort = 1; } else {//选的串口2 if (cb_port2.Text.Equals("") || cb_baudRate2.Text.Equals("")) { string ts = languageFile.ReadString("ONOFFFORM", "T2", "串口2设置不能为空!"); string tp = languageFile.ReadString("MESSAGEBOX", "TP", "提示"); MessageBox.Show(ts, tp); return; } portName = cb_port1.Text; baudrate = int.Parse(cb_baudRate1.Text); if (cb_port1.Text == cb_port2.Text) { string ts = languageFile.ReadString("ONOFFFORM", "T3", "两个串口设置不能为同一个串口号!"); string tp = languageFile.ReadString("MESSAGEBOX", "TP", "提示"); MessageBox.Show(ts, tp); return; } f.PortName = portName; f.BaudRate = baudrate; portName = cb_port2.Text; baudrate = int.Parse(cb_baudRate2.Text); f.PortName2 = portName; f.BaudRate2 = baudrate; f.uMultiComPort = 2; } f.Init_port(); } //SerialPortUtil.setSerialPort(portName, baudrate); //SerialPortUtil.openSerialPort(); //保存配置至ini文件 settingFile = new IniFiles(Application.StartupPath + "\\setting.ini"); settingFile.WriteString("Com Set", "port1", cb_port1.Text); //Console.WriteLine(cb_port1.Text); settingFile.WriteString("Com Set", "baudrate1", cb_baudRate1.Text); settingFile.WriteString("Com Set", "port2", cb_port2.Text); settingFile.WriteString("Com Set", "baudrate2", cb_baudRate2.Text); settingFile.WriteString("Com Set", "timeout", cb_timeout.Text); settingFile.WriteInteger("Com Set", "MultiCom", cb_multiCom.SelectedIndex + 1); settingFile.WriteString("Com Set", "IP", textBox_IP.Text); settingFile.WriteString("Com Set", "Port", textBox_Port.Text); settingFile.WriteBool("Com Set", "TCPCOM", f.TCPCOM); settingFile.WriteBool("Com Set", "PJLink", checkBox3.Checked); settingFile.WriteInteger("Com Set", "TCPP", combo_netpro.SelectedIndex); settingFile.WriteInteger("Com Set", "Con", (int)numericUpDown1.Value); this.Close(); }