Example #1
0
 //连接
 private void buttonConnect_Click(object sender, EventArgs e)
 {
     if (buttonConnect.Text == "Conncect")
     {
         //light = new Light(0, new LightingOPT(1, textBoxIP.Text.Trim()));
         light         = new LightingOPT(1, textBoxIP.Text.Trim());
         this.lightCom = light as LightingCom;
         var ret = this.lightCom.Connect(new TimeSpan(0, 0, 0, 0, 40));
         if (ret)
         {
             this.richTextBoxState.AppendText($"connect:{ret.ToString()}" + Environment.NewLine);
             if (light.GetChannelState(LightChn.Red) == 1 && light.GetChannelState(LightChn.Green) == 1 && light.GetChannelState(LightChn.Blue) == 1)
             {
                 StringBuilder sn      = new StringBuilder();
                 StringBuilder ip      = new StringBuilder();
                 StringBuilder mask    = new StringBuilder();
                 StringBuilder gateWay = new StringBuilder();
                 this.richTextBoxState.AppendText($"all RGB light connected!" + Environment.NewLine);
                 this.light.ReadSN(sn);                      //读取设备序列号
                 this.txtSN.Text = sn.ToString();
                 this.light.ReadIPConfig(ip, mask, gateWay); //读取IP配置
                 this.txtIP.Text         = ip.ToString();
                 this.txtSubnetMask.Text = mask.ToString();
                 this.txtGateway.Text    = gateWay.ToString();
                 labelConnectState.Text  = "connected";
                 buttonConnect.Text      = "Disconnect";
             }
             else
             {
                 this.richTextBoxState.AppendText($"one or more RGB light disconnected!" + Environment.NewLine);
             }
         }
         else
         {
             this.richTextBoxState.AppendText($"connect:{ret.ToString()}" + Environment.NewLine);
         }
     }
     else
     {
         this.lightCom.Disconnect();
         buttonConnect.Text     = "Connect";
         labelConnectState.Text = "disconnected";
     }
 }