341 lines
14 KiB
C#
341 lines
14 KiB
C#
using System;
|
|
using System.Linq;
|
|
using System.Collections.ObjectModel;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Drawing;
|
|
using System.Data;
|
|
using System.Text;
|
|
using System.Windows.Forms;
|
|
|
|
using SmartX;
|
|
using ITC81DB_0H.Forms;
|
|
using ITC81DB_0H.DialogForms;
|
|
using ITC81DB_2H_ImageDll;
|
|
using ITC81DB_2H.Datastore;
|
|
|
|
namespace ITC81DB_0H.Controls
|
|
{
|
|
public partial class ControlCenterSystemIOTest : UserControl
|
|
{
|
|
#region Field
|
|
private FormMenu m_ParentForm;
|
|
|
|
private Color ColorIOStatusOn;
|
|
private Color ColorIOStatusOff;
|
|
|
|
private Collection<Label> CollectionInputLabel;
|
|
private Collection<SmartLabel> CollectionInputLabelName;
|
|
private Collection<SmartButton> CollectionOutputButton;
|
|
#endregion
|
|
|
|
#region Constructor
|
|
public ControlCenterSystemIOTest(FormMenu parent)
|
|
{
|
|
InitializeComponent();
|
|
|
|
this.ParentForm = parent;
|
|
|
|
this.DefaultSetting();
|
|
this.InitializeDesign();
|
|
}
|
|
#endregion
|
|
|
|
#region Property
|
|
public FormMenu ParentForm
|
|
{
|
|
get { return this.m_ParentForm; }
|
|
private set { this.m_ParentForm = value; }
|
|
}
|
|
#endregion
|
|
|
|
#region Method
|
|
public void InitializeDesign()
|
|
{
|
|
Class1 images = new Class1();
|
|
|
|
if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.English)
|
|
{
|
|
this.groupBoxOutput.Text = "Output";
|
|
this.groupBoxInput.Text = "Input";
|
|
|
|
//this.buttonOutput1.Text = "Buzzer";
|
|
//this.buttonOutput2.Text = "GRN Lamp";
|
|
//this.buttonOutput3.Text = "RED Lamp";
|
|
//this.buttonOutput4.Text = "YEL Lamp";
|
|
//this.buttonOutput5.Text = "OPT";
|
|
//this.buttonOutput6.Text = "SORT A";
|
|
//this.buttonOutput7.Text = "SORT B";
|
|
//this.buttonOutput8.Text = "Motor";
|
|
//this.buttonOutput9.Text = "DRY 1";
|
|
//this.buttonOutput10.Text = "DRT 2";
|
|
//this.buttonOutput11.Text = "DRY 3";
|
|
//this.buttonOutput12.Text = "DRY 4";
|
|
//this.buttonOutput13.Text = "DRY 5";
|
|
//this.buttonOutput14.Text = "DRY 6";
|
|
//this.buttonOutput15.Text = "DRY 7";
|
|
//this.buttonOutput16.Text = "DRY 8";
|
|
|
|
//this.labelInputName1.Text = "PI8";
|
|
//this.labelInputName2.Text = "PI7";
|
|
//this.labelInputName3.Text = "PI6";
|
|
//this.labelInputName4.Text = "PI5";
|
|
//this.labelInputName5.Text = "PI4";
|
|
//this.labelInputName6.Text = "PI3";
|
|
//this.labelInputName7.Text = "PhotoB";
|
|
//this.labelInputName8.Text = "PhotoA";
|
|
|
|
}
|
|
else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Chinese)
|
|
{
|
|
this.groupBoxOutput.Text = "输出";
|
|
this.groupBoxInput.Text = "输入";
|
|
|
|
//this.buttonOutput1.Text = "蜂鸣器";
|
|
//this.buttonOutput2.Text = "绿灯";
|
|
//this.buttonOutput3.Text = "红灯";
|
|
//this.buttonOutput4.Text = "黄灯";
|
|
//this.buttonOutput5.Text = "OPT";
|
|
//this.buttonOutput6.Text = "分类机A";
|
|
//this.buttonOutput7.Text = "分类机B";
|
|
//this.buttonOutput8.Text = "马达";
|
|
//this.buttonOutput9.Text = "无电压1";
|
|
//this.buttonOutput10.Text = "无电压2";
|
|
//this.buttonOutput11.Text = "无电压3";
|
|
//this.buttonOutput12.Text = "无电压4";
|
|
//this.buttonOutput13.Text = "无电压5";
|
|
|
|
//this.labelInputName1.Text = "PI8";
|
|
//this.labelInputName2.Text = "PI7";
|
|
//this.labelInputName3.Text = "PI6";
|
|
//this.labelInputName4.Text = "PI5";
|
|
//this.labelInputName5.Text = "PI4";
|
|
//this.labelInputName6.Text = "PI3";
|
|
//this.labelInputName7.Text = "PhotoB";
|
|
//this.labelInputName8.Text = "PhotoA";
|
|
}
|
|
else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Czech)
|
|
{
|
|
}
|
|
else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.Russian)
|
|
{
|
|
this.groupBoxOutput.Text = "Выход";
|
|
this.groupBoxInput.Text = "Вход";
|
|
|
|
//this.buttonOutput1.Text = "Сигнал";
|
|
//this.buttonOutput2.Text = "Зеленая";
|
|
//this.buttonOutput3.Text = "Красная";
|
|
//this.buttonOutput4.Text = "Желтая";
|
|
//this.buttonOutput5.Text = "[OPT]";
|
|
//this.buttonOutput6.Text = "[SORT A]";
|
|
//this.buttonOutput7.Text = "[SORT B]";
|
|
//this.buttonOutput8.Text = "[Motor]";
|
|
//this.buttonOutput9.Text = "[DRY 1]";
|
|
//this.buttonOutput10.Text = "[DRT 2]";
|
|
//this.buttonOutput11.Text = "[DRY 3]";
|
|
//this.buttonOutput12.Text = "[DRY 4]";
|
|
//this.buttonOutput13.Text = "[DRY 5]";
|
|
|
|
//this.labelInputName1.Text = "[PI8]";
|
|
//this.labelInputName2.Text = "[PI7]";
|
|
//this.labelInputName3.Text = "[PI6]";
|
|
//this.labelInputName4.Text = "[PI5]";
|
|
//this.labelInputName5.Text = "[PI4]";
|
|
//this.labelInputName6.Text = "[PI3]";
|
|
//this.labelInputName7.Text = "[PhotoB]";
|
|
//this.labelInputName8.Text = "[PhotoA]";
|
|
}
|
|
else if (this.ParentForm.ParentForm.SystemConfig1.Language == Define.E_LanguageID.German)
|
|
{
|
|
this.groupBoxOutput.Text = "Ausgabe";
|
|
this.groupBoxInput.Text = "Eingang";
|
|
|
|
//this.buttonOutput1.Text = "Summer";
|
|
//this.buttonOutput2.Text = "Grüne-Amp";
|
|
//this.buttonOutput3.Text = "Rote-Amp";
|
|
//this.buttonOutput4.Text = "Gelb-Amp";
|
|
//this.buttonOutput5.Text = "Möglichkeit";
|
|
//this.buttonOutput6.Text = "SORT-A";
|
|
//this.buttonOutput7.Text = "SORT-B";
|
|
//this.buttonOutput8.Text = "Motor";
|
|
//this.buttonOutput9.Text = "Lauf 1";
|
|
//this.buttonOutput10.Text = "Lauf 2";
|
|
//this.buttonOutput11.Text = "Lauf 3";
|
|
//this.buttonOutput12.Text = "Lauf 4";
|
|
//this.buttonOutput13.Text = "Lauf 5";
|
|
|
|
//this.labelInputName1.Text = "PI8";
|
|
//this.labelInputName2.Text = "PI7";
|
|
//this.labelInputName3.Text = "PI6";
|
|
//this.labelInputName4.Text = "PI5";
|
|
//this.labelInputName5.Text = "PI4";
|
|
//this.labelInputName6.Text = "PI3";
|
|
//this.labelInputName7.Text = "PhotoB";
|
|
//this.labelInputName8.Text = "PhotoA";
|
|
}
|
|
else
|
|
{
|
|
this.groupBoxOutput.Text = "Output";
|
|
this.groupBoxInput.Text = "Input";
|
|
|
|
//this.buttonOutput1.Text = "Buzzer";
|
|
//this.buttonOutput2.Text = "GRN Lamp";
|
|
//this.buttonOutput3.Text = "RED Lamp";
|
|
//this.buttonOutput4.Text = "YEL Lamp";
|
|
//this.buttonOutput5.Text = "OPT";
|
|
//this.buttonOutput6.Text = "SORT A";
|
|
//this.buttonOutput7.Text = "SORT B";
|
|
//this.buttonOutput8.Text = "Motor";
|
|
//this.buttonOutput9.Text = "DRY 1";
|
|
//this.buttonOutput10.Text = "DRT 2";
|
|
//this.buttonOutput11.Text = "DRY 3";
|
|
//this.buttonOutput12.Text = "DRY 4";
|
|
//this.buttonOutput13.Text = "DRY 5";
|
|
|
|
//this.labelInputName1.Text = "PI8";
|
|
//this.labelInputName2.Text = "PI7";
|
|
//this.labelInputName3.Text = "PI6";
|
|
//this.labelInputName4.Text = "PI5";
|
|
//this.labelInputName5.Text = "PI4";
|
|
//this.labelInputName6.Text = "PI3";
|
|
//this.labelInputName7.Text = "PhotoB";
|
|
//this.labelInputName8.Text = "PhotoA";
|
|
}
|
|
}
|
|
private void DefaultSetting()
|
|
{
|
|
this.ColorIOStatusOn = Color.Lime;
|
|
this.ColorIOStatusOff = Color.Gray;
|
|
|
|
this.CollectionInputLabel = new Collection<Label>();
|
|
this.CollectionInputLabel.Clear();
|
|
this.CollectionInputLabel.Add(this.labelInput1);
|
|
this.CollectionInputLabel.Add(this.labelInput2);
|
|
this.CollectionInputLabel.Add(this.labelInput3);
|
|
this.CollectionInputLabel.Add(this.labelInput4);
|
|
this.CollectionInputLabel.Add(this.labelInput5);
|
|
this.CollectionInputLabel.Add(this.labelInput6);
|
|
this.CollectionInputLabel.Add(this.labelInput7);
|
|
this.CollectionInputLabel.Add(this.labelInput8);
|
|
|
|
this.CollectionInputLabelName = new Collection<SmartLabel>();
|
|
this.CollectionInputLabelName.Clear();
|
|
this.CollectionInputLabelName.Add(this.labelInputName1);
|
|
this.CollectionInputLabelName.Add(this.labelInputName2);
|
|
this.CollectionInputLabelName.Add(this.labelInputName3);
|
|
this.CollectionInputLabelName.Add(this.labelInputName4);
|
|
this.CollectionInputLabelName.Add(this.labelInputName5);
|
|
this.CollectionInputLabelName.Add(this.labelInputName6);
|
|
this.CollectionInputLabelName.Add(this.labelInputName7);
|
|
this.CollectionInputLabelName.Add(this.labelInputName8);
|
|
|
|
this.CollectionOutputButton = new Collection<SmartButton>();
|
|
this.CollectionOutputButton.Clear();
|
|
this.CollectionOutputButton.Add(this.buttonOutput1);
|
|
this.CollectionOutputButton.Add(this.buttonOutput2);
|
|
this.CollectionOutputButton.Add(this.buttonOutput3);
|
|
this.CollectionOutputButton.Add(this.buttonOutput4);
|
|
this.CollectionOutputButton.Add(this.buttonOutput5);
|
|
this.CollectionOutputButton.Add(this.buttonOutput6);
|
|
this.CollectionOutputButton.Add(this.buttonOutput7);
|
|
this.CollectionOutputButton.Add(this.buttonOutput8);
|
|
this.CollectionOutputButton.Add(this.buttonOutput9);
|
|
this.CollectionOutputButton.Add(this.buttonOutput10);
|
|
this.CollectionOutputButton.Add(this.buttonOutput11);
|
|
this.CollectionOutputButton.Add(this.buttonOutput12);
|
|
this.CollectionOutputButton.Add(this.buttonOutput13);
|
|
|
|
//for (int i = 0; i < this.CollectionInputLabelName.Count; i++)
|
|
//{
|
|
// this.CollectionInputLabelName[i].Text = string.Format("IN{0}", i + 1);
|
|
// this.CollectionOutputButton[i].Text = string.Format("OUT{0}", i + 1);
|
|
//}
|
|
}
|
|
|
|
public void UpdateEquipmentStatusDisplay(Define.E_EquipmentStatus status)
|
|
{
|
|
if (status == Define.E_EquipmentStatus.Start)
|
|
{
|
|
this.groupBoxOutput.Enabled = false;
|
|
|
|
foreach (System.Windows.Forms.Label label in this.CollectionInputLabel)
|
|
label.Visible = false;
|
|
}
|
|
else
|
|
{
|
|
this.groupBoxOutput.Enabled = true;
|
|
|
|
foreach (System.Windows.Forms.Label label in this.CollectionInputLabel)
|
|
label.Visible = true;
|
|
}
|
|
}
|
|
private void SetlabelOnOff(Label control, bool isOn)
|
|
{
|
|
if (isOn == true)
|
|
{
|
|
if (control.BackColor != this.ColorIOStatusOn)
|
|
control.BackColor = this.ColorIOStatusOn;
|
|
}
|
|
else
|
|
{
|
|
if (control.BackColor != this.ColorIOStatusOff)
|
|
control.BackColor = this.ColorIOStatusOff;
|
|
}
|
|
}
|
|
|
|
public void UpdateInputRead(Collection<string> values)
|
|
{
|
|
if (values.Count == 0 || values == null)
|
|
return;
|
|
|
|
for (int i = 0; i < values.Count; i++)
|
|
this.SetlabelOnOff(this.CollectionInputLabel[i], values[i] == "1" ? true : false);
|
|
}
|
|
|
|
public void DisplayRefresh(SystemStatus status)
|
|
{
|
|
this.ParentForm.ParentForm.CurrentSystemStatus.CurrentDisplay = Define.E_DisplayStore.SystemIOTest;
|
|
this.ParentForm.ParentForm.SetDisplayMode(Define.E_DisplayMode.IOTest);
|
|
this.ParentForm.DisplayTitleRoot(this.ParentForm.ParentForm.CurrentSystemStatus);
|
|
|
|
foreach (SmartButton button in this.CollectionOutputButton)
|
|
button.ButtonUp();
|
|
}
|
|
#endregion
|
|
|
|
#region Event Handler
|
|
private void buttonInputRead_Click(object sender, EventArgs e)
|
|
{
|
|
if (this.buttonInputRead.ButtonStatus == SmartButton.BUTSTATUS.DOWN)
|
|
this.timer.Enabled = true;
|
|
else
|
|
this.timer.Enabled = false;
|
|
}
|
|
|
|
private void buttonOutput_Click(object sender, EventArgs e)
|
|
{
|
|
SmartButton button = sender as SmartButton;
|
|
|
|
if (button == null)
|
|
return;
|
|
|
|
if (button.ButtonStatus == SmartButton.BUTSTATUS.DOWN)
|
|
{
|
|
this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.IOTest, CommunicationID.MainBoard, Helper.StringZeroFillDigits4(button.Tag.ToString()),
|
|
Helper.StringZeroFillDigits4("1"));
|
|
}
|
|
else
|
|
{
|
|
this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.IOTest, CommunicationID.MainBoard, Helper.StringZeroFillDigits4(button.Tag.ToString()),
|
|
Helper.StringZeroFillDigits4("0"));
|
|
}
|
|
}
|
|
|
|
private void timer_Tick(object sender, EventArgs e)
|
|
{
|
|
this.ParentForm.ParentForm.TransferDataStream(CommunicationCommand.Read, CommunicationID.MainBoard, CommunicationAddress.InputAll, "");
|
|
}
|
|
#endregion
|
|
}
|
|
}
|