Initial commit

This commit is contained in:
ChiKyun Kim
2025-07-17 16:11:46 +09:00
parent 4865711adc
commit 4a1b1924ba
743 changed files with 230954 additions and 0 deletions

View File

@@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Project
{
public class Flag : CInterLock
{
public Boolean IsInit; //H/W설정이 안된경우에만 FALSE로 한다
public int PortCount;
public string[] Name;
public Flag()
{
this.Tag = "MAIN";
PortCount = 64;
IsInit = true;
errorMessage = string.Empty;
_value = 0;
Name = new string[PortCount];
for (int i = 0; i < Name.Length; i++)
{
Name[i] = string.Empty;
}
}
public bool get(eFlag flag)
{
return get((int)flag);
}
public void set(eFlag flag, bool value, string reason)
{
var idx = (int)flag;
set(idx, value, reason);
}
public void Toggle(eFlag flag)
{
Toggle((int)flag);
}
}
}

View File

@@ -0,0 +1,99 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Project
{
public class CInterLock
{
UInt64 offsetValue = 0x01;
public object Tag { get; set; }
public string errorMessage;
protected UInt64 _value;
public UInt64 Value { get { return _value; } set { _value = value; } }
public event EventHandler<ValueEventArgs> ValueChanged;
public class ValueEventArgs : EventArgs
{
private int _arridx;
private Boolean _oldvalue;
private Boolean _newvalue;
private string _reason;
public int ArrIDX { get { return _arridx; } }
public Boolean OldValue { get { return _oldvalue; } }
public Boolean NewValue { get { return _newvalue; } }
public string Reason { get { return _reason; } }
public Boolean NewOn { get; set; }
public Boolean NewOff { get; set; }
public ValueEventArgs(int arridx, Boolean oldvalue, Boolean newvalue, string reason_, Boolean newon_, Boolean newof_)
{
_arridx = arridx;
_oldvalue = oldvalue;
_newvalue = newvalue;
_reason = reason_;
this.NewOn = newon_;
this.NewOff = newon_;
}
}
public CInterLock(object tag = null)
{
errorMessage = string.Empty;
_value = 0;
this.Tag = tag;
}
public Boolean get(int idx)
{
if (idx >= 64)
throw new Exception("flag는 최대 64개를 지원 합니다");
var offset = (UInt64)(offsetValue << idx);
return (_value & offset) != 0;
}
public void set(int idx, Boolean value, string reason)
{
if (idx >= 64)
throw new Exception("flag는 최대 64개를 지원 합니다");
var oldvalue = get(idx);
var raw_old = _value;
if (value)
{
var offset = (UInt64)(offsetValue << idx);
_value = _value | offset;
}
else
{
var shiftvalue = (UInt64)(offsetValue << idx);
UInt64 offset = ~shiftvalue;
_value = _value & offset;
}
if (oldvalue != value)
{
Boolean NewOn = (raw_old == 0 && _value > 0);
Boolean NewOf = (raw_old != 0 && _value == 0);
if (ValueChanged != null)
ValueChanged(this, new ValueEventArgs(idx, oldvalue, value, reason, NewOn, NewOf));
}
else
{
//Pub.log.Add(" >> SKIP");
//if (string.IsNullOrEmpty(reason) == false)
//Pub.log.Add("#### FLAG변경(값이 같아서 처리 안함) : idx=" + idx.ToString() + ",값:" + value.ToString() + ",사유:" + reason);
}
}
public void Toggle(int idx, string reason = "")
{
var curValue = get(idx);
set(idx, !curValue, reason);
}
}
}

View File

@@ -0,0 +1,229 @@
namespace Project.Dialog
{
partial class SystemParameter
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.button1 = new System.Windows.Forms.Button();
this.propertyGrid1 = new System.Windows.Forms.PropertyGrid();
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.button9 = new System.Windows.Forms.Button();
this.button8 = new System.Windows.Forms.Button();
this.button7 = new System.Windows.Forms.Button();
this.button6 = new System.Windows.Forms.Button();
this.button5 = new System.Windows.Forms.Button();
this.button2 = new System.Windows.Forms.Button();
this.button3 = new System.Windows.Forms.Button();
this.button4 = new System.Windows.Forms.Button();
this.tableLayoutPanel1.SuspendLayout();
this.SuspendLayout();
//
// button1
//
this.button1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.button1.Location = new System.Drawing.Point(0, 637);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(537, 51);
this.button1.TabIndex = 0;
this.button1.Text = "Save";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// propertyGrid1
//
this.propertyGrid1.Dock = System.Windows.Forms.DockStyle.Fill;
this.propertyGrid1.Location = new System.Drawing.Point(0, 0);
this.propertyGrid1.Name = "propertyGrid1";
this.propertyGrid1.Size = new System.Drawing.Size(537, 578);
this.propertyGrid1.TabIndex = 1;
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.ColumnCount = 8;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.5F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.5F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.5F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.5F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.5F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.5F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.5F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 12.5F));
this.tableLayoutPanel1.Controls.Add(this.button9, 7, 0);
this.tableLayoutPanel1.Controls.Add(this.button8, 6, 0);
this.tableLayoutPanel1.Controls.Add(this.button7, 5, 0);
this.tableLayoutPanel1.Controls.Add(this.button6, 4, 0);
this.tableLayoutPanel1.Controls.Add(this.button5, 3, 0);
this.tableLayoutPanel1.Controls.Add(this.button2, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.button3, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.button4, 2, 0);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.tableLayoutPanel1.Location = new System.Drawing.Point(0, 578);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 1;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(537, 59);
this.tableLayoutPanel1.TabIndex = 3;
//
// button9
//
this.button9.Dock = System.Windows.Forms.DockStyle.Fill;
this.button9.Font = new System.Drawing.Font("굴림", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button9.Location = new System.Drawing.Point(472, 3);
this.button9.Name = "button9";
this.button9.Size = new System.Drawing.Size(62, 53);
this.button9.TabIndex = 5;
this.button9.Tag = "7";
this.button9.Text = "Motor 7";
this.button9.UseVisualStyleBackColor = true;
this.button9.Click += new System.EventHandler(this.button2_Click_1);
//
// button8
//
this.button8.Dock = System.Windows.Forms.DockStyle.Fill;
this.button8.Font = new System.Drawing.Font("굴림", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button8.Location = new System.Drawing.Point(405, 3);
this.button8.Name = "button8";
this.button8.Size = new System.Drawing.Size(61, 53);
this.button8.TabIndex = 4;
this.button8.Tag = "6";
this.button8.Text = "Motor 6";
this.button8.UseVisualStyleBackColor = true;
this.button8.Click += new System.EventHandler(this.button2_Click_1);
//
// button7
//
this.button7.Dock = System.Windows.Forms.DockStyle.Fill;
this.button7.Font = new System.Drawing.Font("굴림", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button7.Location = new System.Drawing.Point(338, 3);
this.button7.Name = "button7";
this.button7.Size = new System.Drawing.Size(61, 53);
this.button7.TabIndex = 3;
this.button7.Tag = "5";
this.button7.Text = "Motor 5";
this.button7.UseVisualStyleBackColor = true;
this.button7.Click += new System.EventHandler(this.button2_Click_1);
//
// button6
//
this.button6.Dock = System.Windows.Forms.DockStyle.Fill;
this.button6.Font = new System.Drawing.Font("굴림", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button6.Location = new System.Drawing.Point(271, 3);
this.button6.Name = "button6";
this.button6.Size = new System.Drawing.Size(61, 53);
this.button6.TabIndex = 2;
this.button6.Tag = "4";
this.button6.Text = "Motor 4";
this.button6.UseVisualStyleBackColor = true;
this.button6.Click += new System.EventHandler(this.button2_Click_1);
//
// button5
//
this.button5.Dock = System.Windows.Forms.DockStyle.Fill;
this.button5.Font = new System.Drawing.Font("굴림", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button5.Location = new System.Drawing.Point(204, 3);
this.button5.Name = "button5";
this.button5.Size = new System.Drawing.Size(61, 53);
this.button5.TabIndex = 1;
this.button5.Tag = "3";
this.button5.Text = "Motor 3";
this.button5.UseVisualStyleBackColor = true;
this.button5.Click += new System.EventHandler(this.button2_Click_1);
//
// button2
//
this.button2.Dock = System.Windows.Forms.DockStyle.Fill;
this.button2.Font = new System.Drawing.Font("굴림", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button2.Location = new System.Drawing.Point(3, 3);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(61, 53);
this.button2.TabIndex = 0;
this.button2.Tag = "0";
this.button2.Text = "Motor 0";
this.button2.UseVisualStyleBackColor = true;
this.button2.Click += new System.EventHandler(this.button2_Click_1);
//
// button3
//
this.button3.Dock = System.Windows.Forms.DockStyle.Fill;
this.button3.Font = new System.Drawing.Font("굴림", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button3.Location = new System.Drawing.Point(70, 3);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(61, 53);
this.button3.TabIndex = 0;
this.button3.Tag = "1";
this.button3.Text = "Motor 1";
this.button3.UseVisualStyleBackColor = true;
this.button3.Click += new System.EventHandler(this.button2_Click_1);
//
// button4
//
this.button4.Dock = System.Windows.Forms.DockStyle.Fill;
this.button4.Font = new System.Drawing.Font("굴림", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.button4.Location = new System.Drawing.Point(137, 3);
this.button4.Name = "button4";
this.button4.Size = new System.Drawing.Size(61, 53);
this.button4.TabIndex = 0;
this.button4.Tag = "2";
this.button4.Text = "Motor 2";
this.button4.UseVisualStyleBackColor = true;
this.button4.Click += new System.EventHandler(this.button2_Click_1);
//
// SystemParameter
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(537, 688);
this.Controls.Add(this.propertyGrid1);
this.Controls.Add(this.tableLayoutPanel1);
this.Controls.Add(this.button1);
this.KeyPreview = true;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "SystemParameter";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "SystemParameter";
this.Load += new System.EventHandler(this.SystemParameter_Load);
this.tableLayoutPanel1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Button button1;
private System.Windows.Forms.PropertyGrid propertyGrid1;
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private System.Windows.Forms.Button button9;
private System.Windows.Forms.Button button8;
private System.Windows.Forms.Button button7;
private System.Windows.Forms.Button button6;
private System.Windows.Forms.Button button5;
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.Button button4;
}
}

View File

@@ -0,0 +1,49 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Project.Dialog
{
public partial class SystemParameter : Form
{
public SystemParameter()
{
InitializeComponent();
this.KeyDown += SystemParameter_KeyDown;
}
void SystemParameter_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape) this.Close();
}
private void button1_Click(object sender, EventArgs e)
{
this.Invalidate();
Pub.system.Save();
DialogResult = System.Windows.Forms.DialogResult.OK;
}
private void SystemParameter_Load(object sender, EventArgs e)
{
this.propertyGrid1.SelectedObject = Pub.system;
this.propertyGrid1.Invalidate();
}
private void button2_Click(object sender, EventArgs e)
{
}
private void button2_Click_1(object sender, EventArgs e)
{
var but = sender as Button;
var idx = int.Parse(but.Tag.ToString());
Pub.mot.ShowParameter(idx);
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,247 @@
namespace Project
{
partial class fErrorException
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fErrorException));
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.label1 = new System.Windows.Forms.Label();
this.label2 = new System.Windows.Forms.Label();
this.textBox1 = new System.Windows.Forms.TextBox();
this.panTitleBar = new System.Windows.Forms.Panel();
this.lbTitle = new arCtl.arLabel();
this.btTeach = new arCtl.arLabel();
this.panel1 = new System.Windows.Forms.Panel();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.panTitleBar.SuspendLayout();
this.panel1.SuspendLayout();
this.SuspendLayout();
//
// pictureBox1
//
this.pictureBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
this.pictureBox1.Location = new System.Drawing.Point(234, 19);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(80, 80);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
this.pictureBox1.TabIndex = 0;
this.pictureBox1.TabStop = false;
//
// label1
//
this.label1.AutoSize = true;
this.label1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.label1.Font = new System.Drawing.Font("맑은 고딕", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.label1.ForeColor = System.Drawing.Color.White;
this.label1.Location = new System.Drawing.Point(28, 106);
this.label1.Name = "label1";
this.label1.Padding = new System.Windows.Forms.Padding(10);
this.label1.Size = new System.Drawing.Size(488, 50);
this.label1.TabIndex = 3;
this.label1.Text = "미처리 오류로 인해 프로그램이 중단 되었습니다";
//
// label2
//
this.label2.AutoSize = true;
this.label2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.label2.Font = new System.Drawing.Font("맑은 고딕", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.label2.ForeColor = System.Drawing.Color.DodgerBlue;
this.label2.Location = new System.Drawing.Point(46, 159);
this.label2.Name = "label2";
this.label2.Size = new System.Drawing.Size(386, 45);
this.label2.TabIndex = 4;
this.label2.Text = "오류보고를 위한 정보가 수집되었습니다.\r\n수집된 정보는 아래에 같습니다.\r\n발생전 상황을 포함하여 \"Chikyun.kim@amkor.co.kr\" " +
"로 보내주십시요.";
//
// textBox1
//
this.textBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(50)))), ((int)(((byte)(50)))), ((int)(((byte)(50)))));
this.textBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.textBox1.ForeColor = System.Drawing.Color.LightCoral;
this.textBox1.Location = new System.Drawing.Point(10, 218);
this.textBox1.Multiline = true;
this.textBox1.Name = "textBox1";
this.textBox1.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
this.textBox1.Size = new System.Drawing.Size(514, 346);
this.textBox1.TabIndex = 5;
this.textBox1.Text = "test";
//
// panTitleBar
//
this.panTitleBar.BackColor = System.Drawing.Color.Maroon;
this.panTitleBar.Controls.Add(this.lbTitle);
this.panTitleBar.Dock = System.Windows.Forms.DockStyle.Top;
this.panTitleBar.Location = new System.Drawing.Point(1, 1);
this.panTitleBar.Name = "panTitleBar";
this.panTitleBar.Size = new System.Drawing.Size(534, 32);
this.panTitleBar.TabIndex = 133;
//
// lbTitle
//
this.lbTitle.BackColor = System.Drawing.Color.Transparent;
this.lbTitle.BackColor2 = System.Drawing.Color.Transparent;
this.lbTitle.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lbTitle.BorderColor = System.Drawing.Color.Red;
this.lbTitle.BorderColorOver = System.Drawing.Color.Red;
this.lbTitle.BorderSize = new System.Windows.Forms.Padding(0);
this.lbTitle.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lbTitle.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lbTitle.Dock = System.Windows.Forms.DockStyle.Fill;
this.lbTitle.Font = new System.Drawing.Font("Cambria", 12F, ((System.Drawing.FontStyle)((System.Drawing.FontStyle.Bold | System.Drawing.FontStyle.Italic))), System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbTitle.ForeColor = System.Drawing.Color.LightSkyBlue;
this.lbTitle.GradientEnable = true;
this.lbTitle.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lbTitle.GradientRepeatBG = false;
this.lbTitle.isButton = false;
this.lbTitle.Location = new System.Drawing.Point(0, 0);
this.lbTitle.MouseDownColor = System.Drawing.Color.Yellow;
this.lbTitle.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lbTitle.msg = null;
this.lbTitle.Name = "lbTitle";
this.lbTitle.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lbTitle.ProgressBorderColor = System.Drawing.Color.Black;
this.lbTitle.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lbTitle.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lbTitle.ProgressEnable = false;
this.lbTitle.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lbTitle.ProgressForeColor = System.Drawing.Color.Black;
this.lbTitle.ProgressMax = 100F;
this.lbTitle.ProgressMin = 0F;
this.lbTitle.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lbTitle.ProgressValue = 0F;
this.lbTitle.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.lbTitle.Sign = "";
this.lbTitle.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lbTitle.SignColor = System.Drawing.Color.Yellow;
this.lbTitle.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lbTitle.Size = new System.Drawing.Size(534, 32);
this.lbTitle.TabIndex = 60;
this.lbTitle.Text = "UnhandledException";
this.lbTitle.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lbTitle.TextShadow = false;
this.lbTitle.TextVisible = true;
//
// btTeach
//
this.btTeach.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.btTeach.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(100)))), ((int)(((byte)(100)))), ((int)(((byte)(100)))));
this.btTeach.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.btTeach.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.btTeach.BorderColorOver = System.Drawing.Color.DarkBlue;
this.btTeach.BorderSize = new System.Windows.Forms.Padding(0);
this.btTeach.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.btTeach.Cursor = System.Windows.Forms.Cursors.Hand;
this.btTeach.Dock = System.Windows.Forms.DockStyle.Bottom;
this.btTeach.Font = new System.Drawing.Font("맑은 고딕", 20F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.btTeach.ForeColor = System.Drawing.Color.DeepPink;
this.btTeach.GradientEnable = false;
this.btTeach.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.ForwardDiagonal;
this.btTeach.GradientRepeatBG = false;
this.btTeach.isButton = true;
this.btTeach.Location = new System.Drawing.Point(1, 610);
this.btTeach.Margin = new System.Windows.Forms.Padding(0, 0, 5, 0);
this.btTeach.MouseDownColor = System.Drawing.Color.Yellow;
this.btTeach.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.btTeach.msg = null;
this.btTeach.Name = "btTeach";
this.btTeach.ProgressBorderColor = System.Drawing.Color.Black;
this.btTeach.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.btTeach.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.btTeach.ProgressEnable = false;
this.btTeach.ProgressFont = new System.Drawing.Font("맑은 고딕", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btTeach.ProgressForeColor = System.Drawing.Color.Black;
this.btTeach.ProgressMax = 100F;
this.btTeach.ProgressMin = 0F;
this.btTeach.ProgressPadding = new System.Windows.Forms.Padding(0);
this.btTeach.ProgressValue = 0F;
this.btTeach.ShadowColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.btTeach.Sign = "";
this.btTeach.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.btTeach.SignColor = System.Drawing.Color.Yellow;
this.btTeach.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.btTeach.Size = new System.Drawing.Size(534, 61);
this.btTeach.TabIndex = 134;
this.btTeach.Text = "종 료";
this.btTeach.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.btTeach.TextShadow = true;
this.btTeach.TextVisible = true;
this.btTeach.Click += new System.EventHandler(this.btTeach_Click);
//
// panel1
//
this.panel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.panel1.Controls.Add(this.pictureBox1);
this.panel1.Controls.Add(this.textBox1);
this.panel1.Controls.Add(this.label1);
this.panel1.Controls.Add(this.label2);
this.panel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel1.Location = new System.Drawing.Point(1, 33);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(534, 577);
this.panel1.TabIndex = 135;
//
// fErrorException
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(15)))), ((int)(((byte)(15)))), ((int)(((byte)(15)))));
this.ClientSize = new System.Drawing.Size(536, 672);
this.Controls.Add(this.panel1);
this.Controls.Add(this.btTeach);
this.Controls.Add(this.panTitleBar);
this.Font = new System.Drawing.Font("맑은 고딕", 9.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.KeyPreview = true;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "fErrorException";
this.Padding = new System.Windows.Forms.Padding(1);
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Error Report";
this.TopMost = true;
this.Load += new System.EventHandler(this.fErrorException_Load);
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
this.panTitleBar.ResumeLayout(false);
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.PictureBox pictureBox1;
private System.Windows.Forms.Label label1;
private System.Windows.Forms.Label label2;
private System.Windows.Forms.TextBox textBox1;
public System.Windows.Forms.Panel panTitleBar;
private arCtl.arLabel lbTitle;
private arCtl.arLabel btTeach;
private System.Windows.Forms.Panel panel1;
}
}

View File

@@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Project
{
public partial class fErrorException : Form
{
public fErrorException(string err)
{
InitializeComponent();
System.Text.StringBuilder sb = new StringBuilder();
sb.AppendLine("===============================");
sb.AppendLine("개발 : ChiKyun.kim@amkor.co.kr");
sb.AppendLine("소속 : ATK-4 EET 1P");
sb.AppendLine("===============================");
sb.AppendLine();
sb.AppendLine(err);
this.textBox1.Text = sb.ToString();
this.lbTitle.MouseMove += LbTitle_MouseMove;
this.lbTitle.MouseUp += LbTitle_MouseUp;
this.lbTitle.MouseDown += LbTitle_MouseDown;
this.lbTitle.DoubleClick += LbTitle_DoubleClick;
}
private void fErrorException_Load(object sender, EventArgs e)
{
}
#region "Mouse Form Move"
private Boolean fMove = false;
private Point MDownPos;
private void LbTitle_DoubleClick(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Maximized) this.WindowState = FormWindowState.Normal;
else this.WindowState = FormWindowState.Maximized;
}
private void LbTitle_MouseMove(object sender, MouseEventArgs e)
{
if (fMove)
{
Point offset = new Point(e.X - MDownPos.X, e.Y - MDownPos.Y);
this.Left += offset.X;
this.Top += offset.Y;
offset = new Point(0, 0);
}
}
private void LbTitle_MouseUp(object sender, MouseEventArgs e)
{
fMove = false;
}
private void LbTitle_MouseDown(object sender, MouseEventArgs e)
{
MDownPos = new Point(e.X, e.Y);
fMove = true;
}
#endregion
private void btTeach_Click(object sender, EventArgs e)
{
this.Close();
}
}
}

View File

@@ -0,0 +1,144 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="pictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAAFAAAABQCAYAAACOEfKtAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAb
rwAAG68BXhqRHAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAPnSURBVHhe7dzJ
TttQFAbgdNFKnZ6GFWKDfCNGsWRRddO+ATwBo5g2iNdopU7LqlXVFgUa2LDoE7TbQoEIFpVw72/5EOdw
INO919fx/aVfiuwTD58chcFyJSQkJJu4Urm3H0Uv95Wq7VWrx2jyOopeYF06FiLlcGbmkQZ7v6dULFav
w0w6HpINYGpKfQbUj/Hx+Pf8fHy2thafra8nr7EsQYyiT7Xh4Yfp20KQLF59cjI+XlqKL7e3W4plWBcQ
WXZHRp5qkF3AHE5NxScrKzfwqFiHmRRxF+9NN1POdINHDYhpesGjlh6xHzxqaRE53t/VVRGok5YO0SQe
tTSINvCoLYhKfR84RJt41IFFdIFHxbYHCtElHpUjfhkdfZIeTrGS4OkTcIlHLTxinnjUwiLiQPPGoxYO
0Sc8amEQTePxSDOd1ntEG1cejzTTTb1FbMGbnjaCh/JIM93WO0RbeCiPNNNLs4g1pb7lhmgTD+WRZnpt
7oi28VAeaaaf5oaIHWGHNvFQHmmm3yaI+hycIbrCQ3mkGRN1hugSD+WRZkzVOqJrPJRHmjFZa4h54KE8
0ozpGkfMCw/lkWZs1BhinngojzRjq30j5o2H8kgzNptF3Ffqa8eIPuChPNKM7XaN6AseyiPNuChHPBob
e5xytQZ3f2q81xg80L/inCwvixt0VR5pxlVhAZMEsVp9Jd4pq1c+xwBuZMwbD+WRZlwWJnSTZy2KnqVs
zegVyR8Hfs3NiRtwXR5pxnVhAyN8lFO2ZvSKc6w839gQ3+y6PNKM68IGRrpnKVszemEjAN5d3K99F2D4
CLdpu49w+BK5o22/RMKPMbcXFm1/jEEOh4bu68vzLQbrExPx8eKiuEEX5ZFmXBQGsICJ7hsYpVxyfEHk
kWZst2s8ik9XYl7tGY9SZsQsHgy6xqOUEdEYHqVMiMbxKGVAtIZHcYq4sxP/q9fjq9PTpHiNZeKsgVrH
o/ycnX3gAhFgPAmiMNtv/ywsuMGjuEC8ajRStmawTJrtp87xKEDUv/a9s4XoAjA3PIpNRNsfYY6Hc0lP
y22sIdKXyMVF0gTP0JeIN3gUjogDlA7ch3qHRykCYhYPx+oNHsVnRO/xKD4iFgaPggOkpw/ljVg4PIoP
iIXFo+SJWHg8Ch7PpE/iI07kAI90cvCPKuwD+8I+se/CPyLK5ZWYvfKwz8JeeTwuEAcWj2ITceDxKDYQ
S4NHMYlYOjyKCcTS4lESRKU+9IKI2etHgpYRj9ILYsBj6QYx4N2S8BBaA5Eeg9zY3IwbW1vhMcidBoj0
7SxWr8NMOh4iBXd/Xj8KXqlLNHkdHgUfEnIjlcp/1rPAKpMPkMkAAAAASUVORK5CYII=
</value>
</data>
</root>

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,620 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using arDev.AzinAxt;
namespace Project.Dialog
{
public partial class fIOMonitor : Form
{
public fIOMonitor()
{
InitializeComponent();
this.FormClosed += fIOMonitor_FormClosed;
this.Opacity = 1.0;
this.tblDI.SuspendLayout();
this.tblDO.SuspendLayout();
this.tblFG.SuspendLayout();
tblDI.setTitle(Pub.dio.DIName);
tblDO.setTitle(Pub.dio.DOName);
tblFG.setTitle(Pub.flag.Name);
var pinNameI = new string[Pub.dio.DIName.Length];
var pinNameO = new string[Pub.dio.DOName.Length];
for (int i = 0; i < pinNameI.Length; i++)
pinNameI[i] = Enum.GetName(typeof(eDIPin), i);
for (int i = 0; i < pinNameO.Length; i++)
pinNameO[i] = Enum.GetName(typeof(eDOPin), i);
tblDI.setNames(pinNameI);
tblDO.setNames(pinNameO);
tblDI.setItemTextAlign(ContentAlignment.BottomLeft);
tblDO.setItemTextAlign(ContentAlignment.BottomLeft);
tblFG.setItemTextAlign(ContentAlignment.BottomLeft);
var NamePKY = new string[16];
var NamePKZ = new string[16];
var NamePKT = new string[16];
var NamePLM = new string[16];
var NamePLZ = new string[16];
var NamePRM = new string[16];
var NamePRZ = new string[16];
var NamePRL = new string[16];
var NamePRR = new string[16];
var NameVS0 = new string[16];
var NameVS1 = new string[16];
var NameVS2 = new string[16];
for (int i = 0; i < NamePKY.Length; i++)
NamePKY[i] = Enum.GetName(typeof(eILockPKX), i);
for (int i = 0; i < NamePKZ.Length; i++)
NamePKZ[i] = Enum.GetName(typeof(eILockPKZ), i);
for (int i = 0; i < NamePKT.Length; i++)
NamePKT[i] = Enum.GetName(typeof(eILockPKT), i);
for (int i = 0; i < NamePLM.Length; i++)
NamePLM[i] = Enum.GetName(typeof(eILockPRM), i);
for (int i = 0; i < NamePLZ.Length; i++)
NamePLZ[i] = Enum.GetName(typeof(eILockPRZ), i);
for (int i = 0; i < NamePRM.Length; i++)
NamePRM[i] = Enum.GetName(typeof(eILockPRM), i);
for (int i = 0; i < NamePRZ.Length; i++)
NamePRZ[i] = Enum.GetName(typeof(eILockPRZ), i);
for (int i = 0; i < NamePRL.Length; i++)
NamePRL[i] = Enum.GetName(typeof(eILockPRL), i);
for (int i = 0; i < NamePRR.Length; i++)
NamePRR[i] = Enum.GetName(typeof(eILockPRR), i);
for (int i = 0; i < NameVS0.Length; i++)
NameVS0[i] = Enum.GetName(typeof(eILockVS0), i);
for (int i = 0; i < NameVS1.Length; i++)
NameVS1[i] = Enum.GetName(typeof(eILockVS1), i);
for (int i = 0; i < NameVS2.Length; i++)
NameVS2[i] = Enum.GetName(typeof(eILockVS2), i);
gviPKX.setTitle(NamePKY);
gviPKZ.setTitle(NamePKZ);
gviPKT.setTitle(NamePKT);
gviPLM.setTitle(NamePLM);
gviPLZ.setTitle(NamePLZ);
gviPRM.setTitle(NamePRM);
gviPRZ.setTitle(NamePRZ);
gviPRL.setTitle(NamePRL);
gviPRR.setTitle(NamePRR);
gviVS0.setTitle(NameVS0);
gviVS1.setTitle(NameVS1);
gviVS2.setTitle(NameVS2);
gviPKX.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPKZ.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPKT.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPLM.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPLZ.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPRM.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPRZ.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPRL.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPRR.setItemTextAlign(ContentAlignment.MiddleCenter);
gviVS0.setItemTextAlign(ContentAlignment.MiddleCenter);
gviVS1.setItemTextAlign(ContentAlignment.MiddleCenter);
gviVS2.setItemTextAlign(ContentAlignment.MiddleCenter);
gviPKX.ColorList[1].BackColor1 = Color.IndianRed; gviPKX.ColorList[1].BackColor2 = Color.LightCoral;
gviPKZ.ColorList[1].BackColor1 = Color.IndianRed; gviPKZ.ColorList[1].BackColor2 = Color.LightCoral;
gviPKT.ColorList[1].BackColor1 = Color.IndianRed; gviPKT.ColorList[1].BackColor2 = Color.LightCoral;
gviPLM.ColorList[1].BackColor1 = Color.IndianRed; gviPLM.ColorList[1].BackColor2 = Color.LightCoral;
gviPLZ.ColorList[1].BackColor1 = Color.IndianRed; gviPLZ.ColorList[1].BackColor2 = Color.LightCoral;
gviPRM.ColorList[1].BackColor1 = Color.IndianRed; gviPRM.ColorList[1].BackColor2 = Color.LightCoral;
gviPRZ.ColorList[1].BackColor1 = Color.IndianRed; gviPRZ.ColorList[1].BackColor2 = Color.LightCoral;
gviPRL.ColorList[1].BackColor1 = Color.IndianRed; gviPRL.ColorList[1].BackColor2 = Color.LightCoral;
gviPRR.ColorList[1].BackColor1 = Color.IndianRed; gviPRR.ColorList[1].BackColor2 = Color.LightCoral;
gviVS0.ColorList[1].BackColor1 = Color.IndianRed; gviVS0.ColorList[1].BackColor2 = Color.LightCoral;
gviVS1.ColorList[1].BackColor1 = Color.IndianRed; gviVS1.ColorList[1].BackColor2 = Color.LightCoral;
gviVS2.ColorList[1].BackColor1 = Color.IndianRed; gviVS2.ColorList[1].BackColor2 = Color.LightCoral;
//값확인
List<Boolean> diValue = new List<bool>();
for (int i = 0; i < Pub.dio.PIN_I; i++)
diValue.Add(Pub.dio.getDIValue(i));
List<Boolean> doValue = new List<bool>();
for (int i = 0; i < Pub.dio.PIN_O; i++)
doValue.Add(Pub.dio.getDOValue(i));
List<Boolean> fgValue = new List<bool>();
for (int i = 0; i < Pub.flag.PortCount; i++)
fgValue.Add(Pub.flag.get(i));
tblDI.setValue(diValue.ToArray());
tblDO.setValue(doValue.ToArray());
tblFG.setValue(fgValue.ToArray());
List<Boolean> PKXValue = new List<bool>();
List<Boolean> PKZValue = new List<bool>();
List<Boolean> PKTValue = new List<bool>();
List<Boolean> PLMValue = new List<bool>();
List<Boolean> PLZValue = new List<bool>();
List<Boolean> PRMValue = new List<bool>();
List<Boolean> PRZValue = new List<bool>();
List<Boolean> PRLValue = new List<bool>();
List<Boolean> PRRValue = new List<bool>();
List<Boolean> VS0Value = new List<bool>();
List<Boolean> VS1Value = new List<bool>();
List<Boolean> VS2Value = new List<bool>();
for (int i = 0; i < 16; i++)
{
PKXValue.Add(Pub.LockPKX.get(i));
PKZValue.Add(Pub.LockPKZ.get(i));
PKTValue.Add(Pub.LockPKT.get(i));
PLMValue.Add(Pub.LockPLM.get(i));
PLZValue.Add(Pub.LockPLZ.get(i));
PRMValue.Add(Pub.LockPRM.get(i));
PRZValue.Add(Pub.LockPRZ.get(i));
PRLValue.Add(Pub.LockPRL.get(i));
PRRValue.Add(Pub.LockPRR.get(i));
VS0Value.Add(Pub.LockVS0.get(i));
VS1Value.Add(Pub.LockVS1.get(i));
VS2Value.Add(Pub.LockVS2.get(i));
}
gviPKX.setValue(PKXValue.ToArray());
gviPKZ.setValue(PKZValue.ToArray());
gviPKT.setValue(PKTValue.ToArray());
gviPLM.setValue(PLMValue.ToArray());
gviPLZ.setValue(PLZValue.ToArray());
gviPRM.setValue(PRMValue.ToArray());
gviPRZ.setValue(PRZValue.ToArray());
gviPRL.setValue(PRLValue.ToArray());
gviPRR.setValue(PRRValue.ToArray());
gviVS0.setValue(VS0Value.ToArray());
gviVS1.setValue(VS1Value.ToArray());
gviVS2.setValue(VS2Value.ToArray());
Pub.dio.IOValueChanged += dio_IOValueChanged;
Pub.flag.ValueChanged += flag_ValueChanged;
Pub.LockPKX.ValueChanged += LockXF_ValueChanged;
Pub.LockPKZ.ValueChanged += LockXF_ValueChanged;
Pub.LockPKT.ValueChanged += LockXF_ValueChanged;
Pub.LockPLM.ValueChanged += LockXF_ValueChanged;
Pub.LockPLZ.ValueChanged += LockXF_ValueChanged;
Pub.LockPRM.ValueChanged += LockXF_ValueChanged;
Pub.LockPRZ.ValueChanged += LockXF_ValueChanged;
Pub.LockPRL.ValueChanged += LockXF_ValueChanged;
Pub.LockPRR.ValueChanged += LockXF_ValueChanged;
Pub.LockVS0.ValueChanged += LockXF_ValueChanged;
Pub.LockVS1.ValueChanged += LockXF_ValueChanged;
Pub.LockVS2.ValueChanged += LockXF_ValueChanged;
if (Pub.sm.Step != StateMachine.eSMStep.RUN)
{
this.tblDI.ItemClick += tblDI_ItemClick;
this.tblDO.ItemClick += tblDO_ItemClick;
this.tblFG.ItemClick += tblFG_ItemClick;
this.gviPKX.ItemClick += gvILXF_ItemClick;
this.gviPKZ.ItemClick += gvILXF_ItemClick;
this.gviPKT.ItemClick += gvILXF_ItemClick;
this.gviPLM.ItemClick += gvILXF_ItemClick;
this.gviPLZ.ItemClick += gvILXF_ItemClick;
this.gviPRM.ItemClick += gvILXF_ItemClick;
this.gviPRZ.ItemClick += gvILXF_ItemClick;
this.gviPRL.ItemClick += gvILXF_ItemClick;
this.gviPRR.ItemClick += gvILXF_ItemClick;
this.gviVS0.ItemClick += gvILXF_ItemClick;
this.gviVS1.ItemClick += gvILXF_ItemClick;
this.gviVS2.ItemClick += gvILXF_ItemClick;
}
this.tblDI.Invalidate();
this.tblDO.Invalidate();
this.tblFG.Invalidate();
this.gviPKX.Invalidate();
this.gviPKZ.Invalidate();
this.gviPKT.Invalidate();
this.gviPLM.Invalidate();
this.gviPLZ.Invalidate();
this.gviPRM.Invalidate();
this.gviPRZ.Invalidate();
this.gviPRL.Invalidate();
this.gviPRR.Invalidate();
this.gviVS0.Invalidate();
this.gviVS1.Invalidate();
this.gviVS2.Invalidate();
this.lbTitle.MouseMove += LbTitle_MouseMove;
this.lbTitle.MouseUp += LbTitle_MouseUp;
this.lbTitle.MouseDown += LbTitle_MouseDown;
this.lbTitle.DoubleClick += lbTitle_DoubleClick;
this.KeyDown += fIOMonitor_KeyDown;
}
void fIOMonitor_FormClosed(object sender, FormClosedEventArgs e)
{
Pub.dio.IOValueChanged -= dio_IOValueChanged;
Pub.flag.ValueChanged -= flag_ValueChanged;
Pub.LockPKX.ValueChanged -= LockXF_ValueChanged;
Pub.LockPKZ.ValueChanged -= LockXF_ValueChanged;
Pub.LockPKT.ValueChanged -= LockXF_ValueChanged;
Pub.LockPLM.ValueChanged -= LockXF_ValueChanged;
Pub.LockPLZ.ValueChanged -= LockXF_ValueChanged;
Pub.LockPRM.ValueChanged -= LockXF_ValueChanged;
Pub.LockPRZ.ValueChanged -= LockXF_ValueChanged;
Pub.LockPRL.ValueChanged -= LockXF_ValueChanged;
Pub.LockPRR.ValueChanged -= LockXF_ValueChanged;
Pub.LockVS0.ValueChanged -= LockXF_ValueChanged;
Pub.LockVS1.ValueChanged -= LockXF_ValueChanged;
Pub.LockVS2.ValueChanged -= LockXF_ValueChanged;
if (Pub.isRunning == false)
{
this.tblDI.ItemClick -= tblDI_ItemClick;
this.tblDO.ItemClick -= tblDO_ItemClick;
this.tblFG.ItemClick -= tblFG_ItemClick;
this.gviPKX.ItemClick -= gvILXF_ItemClick;
this.gviPKZ.ItemClick -= gvILXF_ItemClick;
this.gviPKT.ItemClick -= gvILXF_ItemClick;
this.gviPLM.ItemClick -= gvILXF_ItemClick;
this.gviPLZ.ItemClick -= gvILXF_ItemClick;
this.gviPRM.ItemClick -= gvILXF_ItemClick;
this.gviPRZ.ItemClick -= gvILXF_ItemClick;
this.gviPRL.ItemClick -= gvILXF_ItemClick;
this.gviPRR.ItemClick -= gvILXF_ItemClick;
this.gviVS0.ItemClick -= gvILXF_ItemClick;
this.gviVS1.ItemClick -= gvILXF_ItemClick;
this.gviVS2.ItemClick -= gvILXF_ItemClick;
}
this.lbTitle.MouseMove -= LbTitle_MouseMove;
this.lbTitle.MouseUp -= LbTitle_MouseUp;
this.lbTitle.MouseDown -= LbTitle_MouseDown;
this.lbTitle.DoubleClick -= lbTitle_DoubleClick;
this.KeyDown -= fIOMonitor_KeyDown;
}
void LockXF_ValueChanged(object sender, CInterLock.ValueEventArgs e)
{
var item = sender as CInterLock;
var tagStr = item.Tag.ToString();
if (tagStr == "PKX")
{
if (gviPKX.setValue(e.ArrIDX, e.NewValue)) gviPKX.Invalidate();
}
else if (tagStr == "PKZ")
{
if (gviPKZ.setValue(e.ArrIDX, e.NewValue)) gviPKZ.Invalidate();
}
else if (tagStr == "PKT")
{
if (gviPKT.setValue(e.ArrIDX, e.NewValue)) gviPKT.Invalidate();
}
else if (tagStr == "PLM")
{
if (gviPLM.setValue(e.ArrIDX, e.NewValue)) gviPLM.Invalidate();
}
else if (tagStr == "PLZ")
{
if (gviPLZ.setValue(e.ArrIDX, e.NewValue)) gviPLZ.Invalidate();
}
else if (tagStr == "PRM")
{
if (gviPRM.setValue(e.ArrIDX, e.NewValue)) gviPRM.Invalidate();
}
else if (tagStr == "PRZ")
{
if (gviPRZ.setValue(e.ArrIDX, e.NewValue)) gviPRZ.Invalidate();
}
else if (tagStr == "PRL")
{
if (gviPRL.setValue(e.ArrIDX, e.NewValue)) gviPRL.Invalidate();
}
else if (tagStr == "PRR")
{
if (gviPRR.setValue(e.ArrIDX, e.NewValue)) gviPRR.Invalidate();
}
else if (tagStr == "VS0")
{
if (gviVS0.setValue(e.ArrIDX, e.NewValue)) gviVS0.Invalidate();
}
else if (tagStr == "VS1")
{
if (gviVS1.setValue(e.ArrIDX, e.NewValue)) gviVS1.Invalidate();
}
else if (tagStr == "VS2")
{
if (gviVS2.setValue(e.ArrIDX, e.NewValue)) gviVS2.Invalidate();
}
}
void gvILXF_ItemClick(object sender, arFrame.Control.GridView.ItemClickEventArgs e)
{
var gv = sender as arFrame.Control.GridView;
var tagStr = gv.Tag.ToString();
if (tagStr == "PKX")
{
var curValue = Pub.LockPKX.get(e.idx);
Pub.LockPKX.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "PKZ")
{
var curValue = Pub.LockPKZ.get(e.idx);
Pub.LockPKZ.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "PKT")
{
var curValue = Pub.LockPKT.get(e.idx);
Pub.LockPKT.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "PLM")
{
var curValue = Pub.LockPKT.get(e.idx);
Pub.LockPLM.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "PLZ")
{
var curValue = Pub.LockPKT.get(e.idx);
Pub.LockPLZ.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "PRM")
{
var curValue = Pub.LockPKT.get(e.idx);
Pub.LockPRM.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "PRZ")
{
var curValue = Pub.LockPKT.get(e.idx);
Pub.LockPRZ.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "PRL")
{
var curValue = Pub.LockPRL.get(e.idx);
Pub.LockPRL.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "PRR")
{
var curValue = Pub.LockPRR.get(e.idx);
Pub.LockPRR.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "VS0")
{
var curValue = Pub.LockVS0.get(e.idx);
Pub.LockVS0.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "VS1")
{
var curValue = Pub.LockVS1.get(e.idx);
Pub.LockVS1.set(e.idx, !curValue, "IOMONITOR");
}
else if (tagStr == "VS2")
{
var curValue = Pub.LockVS2.get(e.idx);
Pub.LockVS2.set(e.idx, !curValue, "IOMONITOR");
}
}
void lbTitle_DoubleClick(object sender, EventArgs e)
{
if (this.WindowState == FormWindowState.Maximized) this.WindowState = FormWindowState.Normal;
else this.WindowState = FormWindowState.Maximized;
}
void fIOMonitor_KeyDown(object sender, KeyEventArgs e)
{
if (e.KeyCode == Keys.Escape) this.Close();
else if (e.KeyCode == Keys.D && e.Control)
{
this.tblDO.showDebugInfo = !this.tblDO.showDebugInfo;
this.tblDI.showDebugInfo = this.tblDO.showDebugInfo;
this.tblFG.showDebugInfo = this.tblDO.showDebugInfo;
}
}
private void fIOMonitor_Load(object sender, EventArgs e)
{
this.Text = "I/O Monitor";
this.Show();
//'Application.DoEvents();
Dialog.QuickControl fctl = new QuickControl();
fctl.TopLevel = false;
fctl.Visible = true;
this.panel3.Controls.Add(fctl);
fctl.Dock = DockStyle.Top;
fctl.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
fctl.FormBorderStyle = FormBorderStyle.None;//.panTitleBar.Visible = false;
// fctl.panTopMenuDiv.Visible = false;
fctl.panBG.BackColor = this.BackColor;
fctl.panBG.BorderStyle = BorderStyle.None;
fctl.Show();
fctl.Dock = DockStyle.Fill;
this.tmDisplay.Start();
}
#region "Mouse Form Move"
private Boolean fMove = false;
private Point MDownPos;
private void LbTitle_MouseMove(object sender, MouseEventArgs e)
{
if (fMove)
{
Point offset = new Point(e.X - MDownPos.X, e.Y - MDownPos.Y);
this.Left += offset.X;
this.Top += offset.Y;
offset = new Point(0, 0);
}
}
private void LbTitle_MouseUp(object sender, MouseEventArgs e)
{
fMove = false;
}
private void LbTitle_MouseDown(object sender, MouseEventArgs e)
{
MDownPos = new Point(e.X, e.Y);
fMove = true;
}
#endregion
void tblFG_ItemClick(object sender, arFrame.Control.GridView.ItemClickEventArgs e)
{
var curValue = Pub.flag.get(e.idx);
Pub.flag.set(e.idx, !curValue, "IOMONITOR");
}
void tblDO_ItemClick(object sender, arFrame.Control.GridView.ItemClickEventArgs e)
{
var newValue = !Pub.dio.getDOValue(e.idx);
if (Pub.dio.IsInit == false)
{
//임시시그널
var dlg = Util.MsgQ("가상 시그널을 생성하시겠습니까?");
if (dlg == System.Windows.Forms.DialogResult.Yes)
{
Pub.dio.RaiseEvent(eIOPINDIR.OUTPUT, e.idx, newValue);
Pub.log.Add("fake do : " + e.idx.ToString() + ",val=" + newValue.ToString());
}
}
else
{
Pub.dio.SetOutput(e.idx, newValue);
Pub.log.Add(string.Format("set output(iomonitor-userclick) idx={0},val={1}", e.idx, newValue));
}
}
void tblDI_ItemClick(object sender, arFrame.Control.GridView.ItemClickEventArgs e)
{
var newValue = !Pub.dio.getDIValue(e.idx);
if (Pub.dio.IsInit == false || Pub.flag.get(eFlag.DEBUG) == true)
{
//임시시그널
var dlg = Util.MsgQ("가상 시그널을 생성하시겠습니까?");
if (dlg == System.Windows.Forms.DialogResult.Yes)
{
Pub.dio.RaiseEvent(eIOPINDIR.INPUT, e.idx, newValue);
Pub.log.Add("fake di : " + e.idx.ToString() + ",val=" + newValue.ToString());
}
}
}
void flag_ValueChanged(object sender, Flag.ValueEventArgs e)
{
//var butIndex = getControlIndex(e.ArrIDX);
//if (butIndex >= this.tblFG.Controls.Count) return;
//해당 아이템의 값을 변경하고 다시 그린다.
if (tblFG.setValue(e.ArrIDX, e.NewValue))
tblFG.Invalidate();//.drawItem(e.ArrIDX);
}
void dio_IOValueChanged(object sender, arDev.AzinAxt.DIO.IOValueEventArgs e)
{
//var butIndex = getControlIndex(e.ArrIDX);
if (e.Direction == eIOPINDIR.INPUT)
{
//해당 아이템의 값을 변경하고 다시 그린다.
if (tblDI.setValue(e.ArrIDX, e.NewValue))
tblDI.Invalidate();//.drawItem(e.ArrIDX);
}
else
{
//해당 아이템의 값을 변경하고 다시 그린다.
if (tblDO.setValue(e.ArrIDX, e.NewValue))
tblDO.Invalidate();//.drawItem(e.ArrIDX);
}
}
private void tbClose_Click(object sender, EventArgs e)
{
this.Close();
}
private void tmDisplay_Tick(object sender, EventArgs e)
{
//flg update
lbTitle3.Text = "FLAG(" + Pub.flag.Value.ToString() + ")";
//var jobend = Pub.flag.get(32);
for (int i = 0; i < 64; i++)
tblFG.setValue(i, Pub.flag.get(i));
tblFG.Invalidate();
this.label1.Text = string.Format("PICKER-X({0})", Pub.LockPKX.Value);
this.lbXR.Text = string.Format("PICKER-Z({0})", Pub.LockPKZ.Value);
this.label5.Text = string.Format("THETA({0})", Pub.LockPKT.Value);
this.label10.Text = string.Format("VISION-0({0})", Pub.LockVS0.Value);
this.label2.Text = string.Format("VISION-1({0})", Pub.LockVS1.Value);
this.label11.Text = string.Format("VISION-2({0})", Pub.LockVS2.Value);
//8,9,6,7,4,3
this.label8.Text = string.Format("PRINTER-LEFT({0})", Pub.LockPRL.Value);
this.label9.Text = string.Format("PRINTER-RIGHT({0})", Pub.LockPRR.Value);
this.label6.Text = string.Format("PRINTER-LEFT-MOVE({0})", Pub.LockPLM.Value);
this.label7.Text = string.Format("PRINTER-RIGHT-MOVE({0})", Pub.LockPRM.Value);
this.label4.Text = string.Format("PRINTER-LEFT-UP/DN({0})", Pub.LockPLZ.Value);
this.label3.Text = string.Format("PRINTER-RIGHT-UP/DN({0})", Pub.LockPRZ.Value);
}
private void saveIOListToolStripMenuItem_Click(object sender, EventArgs e)
{
var namelist = Enum.GetNames(typeof(eDIName));
var vlist = Enum.GetValues(typeof(eDIName));
var pinlist = Enum.GetNames(typeof(eDIPin));
System.Text.StringBuilder sb = new StringBuilder();
sb.AppendLine("#DI");
sb.AppendLine("IDX,PIN,DESCRIPTION");
for(int i = 0; i < 64;i++)
{
var ev = (eDIName)i;
var val = (int)(ev);
var ep = (eDIPin)val;
var desc = ev.ToString() == val.ToString() ? string.Empty : ev.ToString();
sb.AppendLine(string.Format("{0},{1},{2}", val, ep, desc));
}
sb.AppendLine();
sb.AppendLine("#DO");
sb.AppendLine("IDX,PIN,DESCRIPTION");
vlist = Enum.GetValues(typeof(eDOName));
for (int i = 0; i < 64; i++)
{
var ev = (eDOName)i;
var val = (int)(ev);
var ep = (eDOPin)val;
var desc = ev.ToString() == val.ToString() ? string.Empty : ev.ToString();
sb.AppendLine(string.Format("{0},{1},{2}", val, ep, desc));
}
SaveFileDialog sd = new SaveFileDialog();
sd.Filter = "csv|*.csv";
sd.FileName = "iolist.csv";
if (sd.ShowDialog() == DialogResult.OK)
{
System.IO.File.WriteAllText(sd.FileName, sb.ToString(), System.Text.Encoding.Default);
Util.RunExplorer(sd.FileName);
}
}
}
}

View File

@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="contextMenuStrip1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>124, 17</value>
</metadata>
<metadata name="tmDisplay.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,78 @@
namespace Project.Dialog
{
partial class fInput
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.tbInput = new System.Windows.Forms.TextBox();
this.touchKey1 = new arCtl.TouchKey();
this.SuspendLayout();
//
// tbInput
//
this.tbInput.Font = new System.Drawing.Font("Calibri", 20.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.tbInput.Location = new System.Drawing.Point(26, 21);
this.tbInput.Name = "tbInput";
this.tbInput.Size = new System.Drawing.Size(479, 40);
this.tbInput.TabIndex = 1;
this.tbInput.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// touchKey1
//
this.touchKey1.Location = new System.Drawing.Point(18, 75);
this.touchKey1.Margin = new System.Windows.Forms.Padding(9, 21, 9, 21);
this.touchKey1.Name = "touchKey1";
this.touchKey1.Size = new System.Drawing.Size(503, 381);
this.touchKey1.TabIndex = 5;
this.touchKey1.keyClick += new arCtl.TouchKey.KeyClickHandler(this.touchKey1_keyClick);
//
// fInput
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(539, 486);
this.Controls.Add(this.touchKey1);
this.Controls.Add(this.tbInput);
this.Font = new System.Drawing.Font("Calibri", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.KeyPreview = true;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "fInput";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Input Value";
this.TopMost = true;
this.Load += new System.EventHandler(this.fInput_Load);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
public System.Windows.Forms.TextBox tbInput;
private arCtl.TouchKey touchKey1;
}
}

View File

@@ -0,0 +1,98 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Project.Dialog
{
public partial class fInput : Form
{
public fInput(string value,string title="")
{
InitializeComponent();
if (title.isEmpty() == false) this.Text = title;
this.tbInput.KeyDown += (s1, e1) => { if (e1.KeyCode == Keys.Enter) Confirm(); };
this.KeyPreview = true;
this.KeyDown += (s1, e1) => {
if (e1.KeyCode == Keys.Escape) this.Close();
};
this.tbInput.Text = value;
}
private void Confirm()
{
string id = tbInput.Text.Trim();
if (id.isEmpty())
{
tbInput.Focus();
return;
}
DialogResult = DialogResult.OK;
}
private void touchKey1_keyClick(string key)
{
if (key == "BACK" || key == "◁")
{
if (!tbInput.Text.isEmpty())
{
if (tbInput.Text.Length == 1) tbInput.Text = "";
else tbInput.Text = tbInput.Text.Substring(0, tbInput.Text.Length - 1);
}
//if (tbInput.Text == "") tbInput.Text = "0";
}
else if(key == "-")
{
if (tbInput.Text.StartsWith("-") == false)
tbInput.Text = "-" + tbInput.Text;
else tbInput.Text = tbInput.Text.Substring(1);
}
else if (key == "CLEAR" || key == "RESET" || key == "◀")
{
tbInput.Text = "0";
}
else if (key == "ENTER" || key == "ENT")
{
Confirm();
}
else if(key == ".")
{
if (tbInput.Text != "" && tbInput.Text.IndexOf(".") == -1) tbInput.Text += ".";
}
else
{
if (tbInput.SelectionLength > 0 && tbInput.Text.Length == tbInput.SelectionLength)
{
tbInput.Text = key;
}
else if (tbInput.SelectionLength > 0)
{
//선택된 영역을 대체해준다.
tbInput.SelectedText = key;
}
else
{
//if(tbInput.Text.IndexOf(".") == -1)
tbInput.Text += key;
}
}
tbInput.SelectionLength = 0;
if (!tbInput.Text.isEmpty())
tbInput.SelectionStart = tbInput.Text.Length;
}
private void fInput_Load(object sender, EventArgs e)
{
this.Show();
this.tbInput.SelectAll();
this.tbInput.Focus();
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,200 @@
namespace Project.Dialog
{
partial class fLog
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.panLog = new System.Windows.Forms.Panel();
this.chkVision = new System.Windows.Forms.CheckBox();
this.chkDebug = new System.Windows.Forms.CheckBox();
this.chkILStop = new System.Windows.Forms.CheckBox();
this.chkKen = new System.Windows.Forms.CheckBox();
this.chkILock = new System.Windows.Forms.CheckBox();
this.chkFlag = new System.Windows.Forms.CheckBox();
this.chkMain = new System.Windows.Forms.CheckBox();
this.logTextBox1 = new arCtl.LogTextBox();
this.button1 = new System.Windows.Forms.Button();
this.panLog.SuspendLayout();
this.SuspendLayout();
//
// panLog
//
this.panLog.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
this.panLog.Controls.Add(this.chkVision);
this.panLog.Controls.Add(this.chkDebug);
this.panLog.Controls.Add(this.chkILStop);
this.panLog.Controls.Add(this.chkKen);
this.panLog.Controls.Add(this.chkILock);
this.panLog.Controls.Add(this.chkFlag);
this.panLog.Controls.Add(this.chkMain);
this.panLog.Dock = System.Windows.Forms.DockStyle.Top;
this.panLog.Location = new System.Drawing.Point(0, 0);
this.panLog.Margin = new System.Windows.Forms.Padding(0);
this.panLog.Name = "panLog";
this.panLog.Padding = new System.Windows.Forms.Padding(5);
this.panLog.Size = new System.Drawing.Size(735, 31);
this.panLog.TabIndex = 6;
//
// chkVision
//
this.chkVision.Dock = System.Windows.Forms.DockStyle.Left;
this.chkVision.Location = new System.Drawing.Point(435, 5);
this.chkVision.Name = "chkVision";
this.chkVision.Size = new System.Drawing.Size(70, 17);
this.chkVision.TabIndex = 4;
this.chkVision.Text = "Vision";
this.chkVision.UseVisualStyleBackColor = true;
//
// chkDebug
//
this.chkDebug.Dock = System.Windows.Forms.DockStyle.Left;
this.chkDebug.Location = new System.Drawing.Point(365, 5);
this.chkDebug.Name = "chkDebug";
this.chkDebug.Size = new System.Drawing.Size(70, 17);
this.chkDebug.TabIndex = 3;
this.chkDebug.Text = "Debug";
this.chkDebug.UseVisualStyleBackColor = true;
//
// chkILStop
//
this.chkILStop.Dock = System.Windows.Forms.DockStyle.Left;
this.chkILStop.Location = new System.Drawing.Point(295, 5);
this.chkILStop.Name = "chkILStop";
this.chkILStop.Size = new System.Drawing.Size(70, 17);
this.chkILStop.TabIndex = 2;
this.chkILStop.Text = "IL-Stop";
this.chkILStop.UseVisualStyleBackColor = true;
//
// chkKen
//
this.chkKen.Dock = System.Windows.Forms.DockStyle.Left;
this.chkKen.Location = new System.Drawing.Point(215, 5);
this.chkKen.Name = "chkKen";
this.chkKen.Size = new System.Drawing.Size(80, 17);
this.chkKen.TabIndex = 1;
this.chkKen.Text = "Keyence";
this.chkKen.UseVisualStyleBackColor = true;
//
// chkILock
//
this.chkILock.Dock = System.Windows.Forms.DockStyle.Left;
this.chkILock.Location = new System.Drawing.Point(145, 5);
this.chkILock.Name = "chkILock";
this.chkILock.Size = new System.Drawing.Size(70, 17);
this.chkILock.TabIndex = 0;
this.chkILock.Text = "ILock";
this.chkILock.UseVisualStyleBackColor = true;
this.chkILock.Click += new System.EventHandler(this.chkMain_Click);
//
// chkFlag
//
this.chkFlag.Dock = System.Windows.Forms.DockStyle.Left;
this.chkFlag.Location = new System.Drawing.Point(75, 5);
this.chkFlag.Name = "chkFlag";
this.chkFlag.Size = new System.Drawing.Size(70, 17);
this.chkFlag.TabIndex = 0;
this.chkFlag.Text = "Flag";
this.chkFlag.UseVisualStyleBackColor = true;
this.chkFlag.Click += new System.EventHandler(this.chkMain_Click);
//
// chkMain
//
this.chkMain.Checked = true;
this.chkMain.CheckState = System.Windows.Forms.CheckState.Checked;
this.chkMain.Dock = System.Windows.Forms.DockStyle.Left;
this.chkMain.Location = new System.Drawing.Point(5, 5);
this.chkMain.Name = "chkMain";
this.chkMain.Size = new System.Drawing.Size(70, 17);
this.chkMain.TabIndex = 0;
this.chkMain.Text = "Main";
this.chkMain.UseVisualStyleBackColor = true;
this.chkMain.Click += new System.EventHandler(this.chkMain_Click);
//
// logTextBox1
//
this.logTextBox1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(24)))), ((int)(((byte)(24)))), ((int)(((byte)(24)))));
this.logTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
this.logTextBox1.ColorList = new arCtl.sLogMessageColor[0];
this.logTextBox1.DateFormat = "mm:ss.fff";
this.logTextBox1.DefaultColor = System.Drawing.Color.LightGray;
this.logTextBox1.Dock = System.Windows.Forms.DockStyle.Fill;
this.logTextBox1.EnableDisplayTimer = false;
this.logTextBox1.EnableGubunColor = true;
this.logTextBox1.Font = new System.Drawing.Font("맑은 고딕", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.logTextBox1.ListFormat = "[{0}] {1}";
this.logTextBox1.Location = new System.Drawing.Point(0, 31);
this.logTextBox1.MaxListCount = ((ushort)(200));
this.logTextBox1.MaxTextLength = ((uint)(4000u));
this.logTextBox1.MessageInterval = 50;
this.logTextBox1.Name = "logTextBox1";
this.logTextBox1.Size = new System.Drawing.Size(735, 469);
this.logTextBox1.TabIndex = 4;
this.logTextBox1.Text = "";
//
// button1
//
this.button1.Dock = System.Windows.Forms.DockStyle.Bottom;
this.button1.Location = new System.Drawing.Point(0, 500);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(735, 40);
this.button1.TabIndex = 5;
this.button1.Text = "Load File";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// fLog
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(735, 540);
this.Controls.Add(this.logTextBox1);
this.Controls.Add(this.button1);
this.Controls.Add(this.panLog);
this.Name = "fLog";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Log Display";
this.TopMost = true;
this.Load += new System.EventHandler(this.fLog_Load);
this.panLog.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
private System.Windows.Forms.Panel panLog;
private arCtl.LogTextBox logTextBox1;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.CheckBox chkMain;
private System.Windows.Forms.CheckBox chkILock;
private System.Windows.Forms.CheckBox chkFlag;
private System.Windows.Forms.CheckBox chkKen;
private System.Windows.Forms.CheckBox chkDebug;
private System.Windows.Forms.CheckBox chkILStop;
private System.Windows.Forms.CheckBox chkVision;
}
}

View File

@@ -0,0 +1,104 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Project.Dialog
{
public partial class fLog : Form
{
public fLog()
{
InitializeComponent();
Pub.log.RaiseMsg += log_RaiseMsg;
Pub.logFlag.RaiseMsg += LogFlag_RaiseMsg;
Pub.logILock.RaiseMsg += LogILock_RaiseMsg;
Pub.logKeyence.RaiseMsg += LogKeyence_RaiseMsg;
Pub.logILStop.RaiseMsg += LogIL_RaiseMsg;
Pub.logDbg.RaiseMsg += LogDebug_RaiseMsg;
Pub.logVision.RaiseMsg += LogVision_RaiseMsg;
//this.FormClosed += (s1, e1) => { this.timer1.Stop(); };
}
private void LogVision_RaiseMsg(DateTime LogTime, string TypeStr, string Message)
{
if (this.chkVision.Checked) this.logTextBox1.AddMsg(LogTime, "DEBUG", TypeStr + ":" + Message);
}
private void fLog_Load(object sender, EventArgs e)
{
this.logTextBox1.ColorList = new arCtl.sLogMessageColor[] {
new arCtl.sLogMessageColor("FLAG",Color.SkyBlue),
new arCtl.sLogMessageColor("ILOCK", Color.Gold),
new arCtl.sLogMessageColor("ERR",Color.Red),
new arCtl.sLogMessageColor("ATT", Color.Tomato),
new arCtl.sLogMessageColor("NORM", Color.WhiteSmoke),
};
//timer1.Start();
}
private void button1_Click(object sender, EventArgs e)
{
var od = new OpenFileDialog();
od.InitialDirectory = Pub.log.BaseDirectory;
if (od.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
this.logTextBox1.Text = System.IO.File.ReadAllText(od.FileName, System.Text.Encoding.Default);
}
}
private void chkMain_Click(object sender, EventArgs e)
{
}
private void LogDebug_RaiseMsg(DateTime LogTime, string TypeStr, string Message)
{
if (this.chkDebug.Checked) this.logTextBox1.AddMsg(LogTime, "DEBUG", TypeStr + ":" + Message);
}
private void LogIL_RaiseMsg(DateTime LogTime, string TypeStr, string Message)
{
if (this.chkILStop.Checked) this.logTextBox1.AddMsg(LogTime, "IL-STOP", TypeStr + ":" + Message);
}
private void LogFlag_RaiseMsg(DateTime LogTime, string TypeStr, string Message)
{
if (this.chkFlag.Checked) this.logTextBox1.AddMsg(LogTime, "FLAG", TypeStr + ":" + Message);
}
private void LogILock_RaiseMsg(DateTime LogTime, string TypeStr, string Message)
{
if (this.chkILock.Checked) this.logTextBox1.AddMsg(LogTime, "ILCK", TypeStr + ":" + Message);
}
private void LogKeyence_RaiseMsg(DateTime LogTime, string TypeStr, string Message)
{
if (this.chkKen.Checked) this.logTextBox1.AddMsg(LogTime, "KEYE", TypeStr + ":" + Message);
}
void log_RaiseMsg(DateTime LogTime, string TypeStr, string Message)
{
if (this.chkMain.Checked) this.logTextBox1.AddMsg(LogTime, TypeStr, Message);
}
private void timer1_Tick(object sender, EventArgs e)
{
//this.textBox1.Text =
// "PX:" + Pub.WaitMessage[(int)eWaitMessage.PX] + "\r\n" +
// "PZ:" + Pub.WaitMessage[(int)eWaitMessage.PZ] + "\r\n" +
// "LMOVE:" + Pub.WaitMessage[(int)eWaitMessage.LMOVE] + "\r\n" +
// "LUPDN:" + Pub.WaitMessage[(int)eWaitMessage.LUPDN] + "\r\n" +
// "RMOVE:" + Pub.WaitMessage[(int)eWaitMessage.RMOVE] + "\r\n" +
// "RUPDN:" + Pub.WaitMessage[(int)eWaitMessage.RUPDN] + "\r\n" +
// "LPRINT:" + Pub.WaitMessage[(int)eWaitMessage.LPRINT] + "\r\n" +
// "RPRINT:" + Pub.WaitMessage[(int)eWaitMessage.RPRINT] + "\r\n" +
// "VIS0:" + Pub.WaitMessage[(int)eWaitMessage.VIS0] + "\r\n" +
// "VIS1:" + Pub.WaitMessage[(int)eWaitMessage.VIS1] + "\r\n" +
// "VIS2:" + Pub.WaitMessage[(int)eWaitMessage.VIS2];
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,715 @@
namespace Project
{
partial class fMsgQuestion
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.tmBlink = new System.Windows.Forms.Timer(this.components);
this.arPanel1 = new arCtl.arPanel();
this.panel10 = new System.Windows.Forms.Panel();
this.btYes = new arCtl.arLabel();
this.panSplite = new System.Windows.Forms.Panel();
this.btNo = new arCtl.arLabel();
this.panel8 = new System.Windows.Forms.Panel();
this.lb7 = new arCtl.arLabel();
this.panel7 = new System.Windows.Forms.Panel();
this.lb6 = new arCtl.arLabel();
this.panel6 = new System.Windows.Forms.Panel();
this.lb5 = new arCtl.arLabel();
this.panel5 = new System.Windows.Forms.Panel();
this.lb4 = new arCtl.arLabel();
this.panel4 = new System.Windows.Forms.Panel();
this.lb3 = new arCtl.arLabel();
this.panel3 = new System.Windows.Forms.Panel();
this.lb2 = new arCtl.arLabel();
this.panel2 = new System.Windows.Forms.Panel();
this.lb1 = new arCtl.arLabel();
this.panel1 = new System.Windows.Forms.Panel();
this.lbTitle = new arCtl.arLabel();
this.panel9 = new System.Windows.Forms.Panel();
this.arPanel1.SuspendLayout();
this.panel10.SuspendLayout();
this.panel9.SuspendLayout();
this.SuspendLayout();
//
// tmBlink
//
this.tmBlink.Enabled = true;
this.tmBlink.Interval = 300;
this.tmBlink.Tick += new System.EventHandler(this.tmBlink_Tick);
//
// arPanel1
//
this.arPanel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.arPanel1.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.arPanel1.BorderColor = System.Drawing.Color.DimGray;
this.arPanel1.BorderSize = new System.Windows.Forms.Padding(0);
this.arPanel1.Controls.Add(this.panel10);
this.arPanel1.Controls.Add(this.panel8);
this.arPanel1.Controls.Add(this.lb7);
this.arPanel1.Controls.Add(this.panel7);
this.arPanel1.Controls.Add(this.lb6);
this.arPanel1.Controls.Add(this.panel6);
this.arPanel1.Controls.Add(this.lb5);
this.arPanel1.Controls.Add(this.panel5);
this.arPanel1.Controls.Add(this.lb4);
this.arPanel1.Controls.Add(this.panel4);
this.arPanel1.Controls.Add(this.lb3);
this.arPanel1.Controls.Add(this.panel3);
this.arPanel1.Controls.Add(this.lb2);
this.arPanel1.Controls.Add(this.panel2);
this.arPanel1.Controls.Add(this.lb1);
this.arPanel1.Controls.Add(this.panel1);
this.arPanel1.Controls.Add(this.lbTitle);
this.arPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.arPanel1.Font = new System.Drawing.Font("Consolas", 10F, System.Drawing.FontStyle.Italic);
this.arPanel1.ForeColor = System.Drawing.Color.Khaki;
this.arPanel1.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arPanel1.GradientRepeatBG = false;
this.arPanel1.Location = new System.Drawing.Point(10, 10);
this.arPanel1.Name = "arPanel1";
this.arPanel1.Padding = new System.Windows.Forms.Padding(8);
this.arPanel1.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arPanel1.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arPanel1.ProgressMax = 100F;
this.arPanel1.ProgressMin = 0F;
this.arPanel1.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arPanel1.ProgressValue = 0F;
this.arPanel1.ShadowColor = System.Drawing.Color.Black;
this.arPanel1.ShowBorder = true;
this.arPanel1.Size = new System.Drawing.Size(706, 542);
this.arPanel1.TabIndex = 4;
this.arPanel1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.arPanel1.TextShadow = false;
this.arPanel1.UseProgressBar = false;
this.arPanel1.Paint += new System.Windows.Forms.PaintEventHandler(this.arPanel1_Paint);
//
// panel10
//
this.panel10.Controls.Add(this.btYes);
this.panel10.Controls.Add(this.panSplite);
this.panel10.Controls.Add(this.btNo);
this.panel10.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel10.Location = new System.Drawing.Point(8, 465);
this.panel10.Name = "panel10";
this.panel10.Size = new System.Drawing.Size(690, 69);
this.panel10.TabIndex = 19;
//
// btYes
//
this.btYes.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(80)))), ((int)(((byte)(80)))));
this.btYes.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(80)))), ((int)(((byte)(80)))));
this.btYes.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.btYes.BorderColor = System.Drawing.Color.DimGray;
this.btYes.BorderColorOver = System.Drawing.Color.DimGray;
this.btYes.BorderSize = new System.Windows.Forms.Padding(1);
this.btYes.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.btYes.Cursor = System.Windows.Forms.Cursors.Hand;
this.btYes.Dock = System.Windows.Forms.DockStyle.Fill;
this.btYes.Font = new System.Drawing.Font("맑은 고딕", 30F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btYes.ForeColor = System.Drawing.Color.Lime;
this.btYes.GradientEnable = true;
this.btYes.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.btYes.GradientRepeatBG = false;
this.btYes.isButton = true;
this.btYes.Location = new System.Drawing.Point(0, 0);
this.btYes.Margin = new System.Windows.Forms.Padding(6, 3, 3, 6);
this.btYes.MouseDownColor = System.Drawing.Color.Yellow;
this.btYes.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.btYes.msg = null;
this.btYes.Name = "btYes";
this.btYes.ProgressBorderColor = System.Drawing.Color.Black;
this.btYes.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.btYes.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.btYes.ProgressEnable = false;
this.btYes.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.btYes.ProgressForeColor = System.Drawing.Color.Black;
this.btYes.ProgressMax = 100F;
this.btYes.ProgressMin = 0F;
this.btYes.ProgressPadding = new System.Windows.Forms.Padding(0);
this.btYes.ProgressValue = 0F;
this.btYes.ShadowColor = System.Drawing.Color.FromArgb(((int)(((byte)(10)))), ((int)(((byte)(10)))), ((int)(((byte)(10)))));
this.btYes.Sign = "";
this.btYes.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.btYes.SignColor = System.Drawing.Color.Yellow;
this.btYes.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.btYes.Size = new System.Drawing.Size(368, 69);
this.btYes.TabIndex = 0;
this.btYes.Text = "YES";
this.btYes.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.btYes.TextShadow = true;
this.btYes.TextVisible = true;
this.btYes.Click += new System.EventHandler(this.btYes_Click);
//
// panSplite
//
this.panSplite.Dock = System.Windows.Forms.DockStyle.Right;
this.panSplite.Location = new System.Drawing.Point(368, 0);
this.panSplite.Name = "panSplite";
this.panSplite.Size = new System.Drawing.Size(5, 69);
this.panSplite.TabIndex = 1;
//
// btNo
//
this.btNo.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(80)))), ((int)(((byte)(80)))));
this.btNo.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(80)))), ((int)(((byte)(80)))), ((int)(((byte)(80)))));
this.btNo.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.btNo.BorderColor = System.Drawing.Color.DimGray;
this.btNo.BorderColorOver = System.Drawing.Color.DimGray;
this.btNo.BorderSize = new System.Windows.Forms.Padding(1);
this.btNo.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.btNo.Cursor = System.Windows.Forms.Cursors.Hand;
this.btNo.Dock = System.Windows.Forms.DockStyle.Right;
this.btNo.Font = new System.Drawing.Font("맑은 고딕", 30F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.btNo.ForeColor = System.Drawing.Color.Tomato;
this.btNo.GradientEnable = true;
this.btNo.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.btNo.GradientRepeatBG = false;
this.btNo.isButton = true;
this.btNo.Location = new System.Drawing.Point(373, 0);
this.btNo.Margin = new System.Windows.Forms.Padding(3, 3, 6, 6);
this.btNo.MouseDownColor = System.Drawing.Color.Yellow;
this.btNo.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.btNo.msg = null;
this.btNo.Name = "btNo";
this.btNo.ProgressBorderColor = System.Drawing.Color.Black;
this.btNo.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.btNo.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.btNo.ProgressEnable = false;
this.btNo.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.btNo.ProgressForeColor = System.Drawing.Color.Black;
this.btNo.ProgressMax = 100F;
this.btNo.ProgressMin = 0F;
this.btNo.ProgressPadding = new System.Windows.Forms.Padding(0);
this.btNo.ProgressValue = 0F;
this.btNo.ShadowColor = System.Drawing.Color.FromArgb(((int)(((byte)(10)))), ((int)(((byte)(10)))), ((int)(((byte)(10)))));
this.btNo.Sign = "";
this.btNo.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.btNo.SignColor = System.Drawing.Color.Yellow;
this.btNo.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.btNo.Size = new System.Drawing.Size(317, 69);
this.btNo.TabIndex = 0;
this.btNo.Text = "NO";
this.btNo.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.btNo.TextShadow = true;
this.btNo.TextVisible = true;
this.btNo.Click += new System.EventHandler(this.btNo_Click);
//
// panel8
//
this.panel8.Dock = System.Windows.Forms.DockStyle.Top;
this.panel8.Location = new System.Drawing.Point(8, 460);
this.panel8.Name = "panel8";
this.panel8.Size = new System.Drawing.Size(690, 5);
this.panel8.TabIndex = 18;
//
// lb7
//
this.lb7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb7.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb7.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb7.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb7.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.lb7.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb7.BorderSize = new System.Windows.Forms.Padding(0, 0, 0, 2);
this.lb7.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb7.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb7.Dock = System.Windows.Forms.DockStyle.Top;
this.lb7.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.lb7.ForeColor = System.Drawing.Color.Orange;
this.lb7.GradientEnable = true;
this.lb7.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb7.GradientRepeatBG = false;
this.lb7.isButton = false;
this.lb7.Location = new System.Drawing.Point(8, 410);
this.lb7.MouseDownColor = System.Drawing.Color.Yellow;
this.lb7.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb7.msg = null;
this.lb7.Name = "lb7";
this.lb7.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb7.ProgressBorderColor = System.Drawing.Color.Black;
this.lb7.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb7.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb7.ProgressEnable = false;
this.lb7.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb7.ProgressForeColor = System.Drawing.Color.Black;
this.lb7.ProgressMax = 100F;
this.lb7.ProgressMin = 0F;
this.lb7.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb7.ProgressValue = 0F;
this.lb7.ShadowColor = System.Drawing.Color.Black;
this.lb7.Sign = "";
this.lb7.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb7.SignColor = System.Drawing.Color.Yellow;
this.lb7.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb7.Size = new System.Drawing.Size(690, 50);
this.lb7.TabIndex = 9;
this.lb7.Text = "*";
this.lb7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb7.TextShadow = true;
this.lb7.TextVisible = true;
//
// panel7
//
this.panel7.Dock = System.Windows.Forms.DockStyle.Top;
this.panel7.Location = new System.Drawing.Point(8, 405);
this.panel7.Name = "panel7";
this.panel7.Size = new System.Drawing.Size(690, 5);
this.panel7.TabIndex = 17;
//
// lb6
//
this.lb6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb6.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb6.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb6.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb6.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.lb6.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb6.BorderSize = new System.Windows.Forms.Padding(0, 0, 0, 2);
this.lb6.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb6.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb6.Dock = System.Windows.Forms.DockStyle.Top;
this.lb6.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.lb6.ForeColor = System.Drawing.Color.Orange;
this.lb6.GradientEnable = true;
this.lb6.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb6.GradientRepeatBG = false;
this.lb6.isButton = false;
this.lb6.Location = new System.Drawing.Point(8, 355);
this.lb6.MouseDownColor = System.Drawing.Color.Yellow;
this.lb6.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb6.msg = null;
this.lb6.Name = "lb6";
this.lb6.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb6.ProgressBorderColor = System.Drawing.Color.Black;
this.lb6.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb6.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb6.ProgressEnable = false;
this.lb6.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb6.ProgressForeColor = System.Drawing.Color.Black;
this.lb6.ProgressMax = 100F;
this.lb6.ProgressMin = 0F;
this.lb6.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb6.ProgressValue = 0F;
this.lb6.ShadowColor = System.Drawing.Color.Black;
this.lb6.Sign = "";
this.lb6.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb6.SignColor = System.Drawing.Color.Yellow;
this.lb6.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb6.Size = new System.Drawing.Size(690, 50);
this.lb6.TabIndex = 8;
this.lb6.Text = "*";
this.lb6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb6.TextShadow = true;
this.lb6.TextVisible = true;
//
// panel6
//
this.panel6.Dock = System.Windows.Forms.DockStyle.Top;
this.panel6.Location = new System.Drawing.Point(8, 350);
this.panel6.Name = "panel6";
this.panel6.Size = new System.Drawing.Size(690, 5);
this.panel6.TabIndex = 16;
//
// lb5
//
this.lb5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb5.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb5.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb5.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb5.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.lb5.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb5.BorderSize = new System.Windows.Forms.Padding(0, 0, 0, 2);
this.lb5.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb5.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb5.Dock = System.Windows.Forms.DockStyle.Top;
this.lb5.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.lb5.ForeColor = System.Drawing.Color.Orange;
this.lb5.GradientEnable = true;
this.lb5.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb5.GradientRepeatBG = false;
this.lb5.isButton = false;
this.lb5.Location = new System.Drawing.Point(8, 300);
this.lb5.MouseDownColor = System.Drawing.Color.Yellow;
this.lb5.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb5.msg = null;
this.lb5.Name = "lb5";
this.lb5.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb5.ProgressBorderColor = System.Drawing.Color.Black;
this.lb5.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb5.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb5.ProgressEnable = false;
this.lb5.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb5.ProgressForeColor = System.Drawing.Color.Black;
this.lb5.ProgressMax = 100F;
this.lb5.ProgressMin = 0F;
this.lb5.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb5.ProgressValue = 0F;
this.lb5.ShadowColor = System.Drawing.Color.Black;
this.lb5.Sign = "";
this.lb5.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb5.SignColor = System.Drawing.Color.Yellow;
this.lb5.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb5.Size = new System.Drawing.Size(690, 50);
this.lb5.TabIndex = 7;
this.lb5.Text = "*";
this.lb5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb5.TextShadow = true;
this.lb5.TextVisible = true;
//
// panel5
//
this.panel5.Dock = System.Windows.Forms.DockStyle.Top;
this.panel5.Location = new System.Drawing.Point(8, 295);
this.panel5.Name = "panel5";
this.panel5.Size = new System.Drawing.Size(690, 5);
this.panel5.TabIndex = 15;
//
// lb4
//
this.lb4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb4.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb4.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb4.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.lb4.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb4.BorderSize = new System.Windows.Forms.Padding(0, 0, 0, 2);
this.lb4.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb4.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb4.Dock = System.Windows.Forms.DockStyle.Top;
this.lb4.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.lb4.ForeColor = System.Drawing.Color.Orange;
this.lb4.GradientEnable = true;
this.lb4.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb4.GradientRepeatBG = false;
this.lb4.isButton = false;
this.lb4.Location = new System.Drawing.Point(8, 245);
this.lb4.MouseDownColor = System.Drawing.Color.Yellow;
this.lb4.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb4.msg = null;
this.lb4.Name = "lb4";
this.lb4.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb4.ProgressBorderColor = System.Drawing.Color.Black;
this.lb4.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb4.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb4.ProgressEnable = false;
this.lb4.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb4.ProgressForeColor = System.Drawing.Color.Black;
this.lb4.ProgressMax = 100F;
this.lb4.ProgressMin = 0F;
this.lb4.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb4.ProgressValue = 0F;
this.lb4.ShadowColor = System.Drawing.Color.Black;
this.lb4.Sign = "";
this.lb4.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb4.SignColor = System.Drawing.Color.Yellow;
this.lb4.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb4.Size = new System.Drawing.Size(690, 50);
this.lb4.TabIndex = 6;
this.lb4.Text = "*";
this.lb4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb4.TextShadow = true;
this.lb4.TextVisible = true;
//
// panel4
//
this.panel4.Dock = System.Windows.Forms.DockStyle.Top;
this.panel4.Location = new System.Drawing.Point(8, 240);
this.panel4.Name = "panel4";
this.panel4.Size = new System.Drawing.Size(690, 5);
this.panel4.TabIndex = 14;
//
// lb3
//
this.lb3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb3.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb3.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.lb3.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb3.BorderSize = new System.Windows.Forms.Padding(0, 0, 0, 2);
this.lb3.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb3.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb3.Dock = System.Windows.Forms.DockStyle.Top;
this.lb3.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.lb3.ForeColor = System.Drawing.Color.Orange;
this.lb3.GradientEnable = true;
this.lb3.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb3.GradientRepeatBG = false;
this.lb3.isButton = false;
this.lb3.Location = new System.Drawing.Point(8, 190);
this.lb3.MouseDownColor = System.Drawing.Color.Yellow;
this.lb3.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb3.msg = null;
this.lb3.Name = "lb3";
this.lb3.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb3.ProgressBorderColor = System.Drawing.Color.Black;
this.lb3.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb3.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb3.ProgressEnable = false;
this.lb3.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb3.ProgressForeColor = System.Drawing.Color.Black;
this.lb3.ProgressMax = 100F;
this.lb3.ProgressMin = 0F;
this.lb3.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb3.ProgressValue = 0F;
this.lb3.ShadowColor = System.Drawing.Color.Black;
this.lb3.Sign = "";
this.lb3.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb3.SignColor = System.Drawing.Color.Yellow;
this.lb3.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb3.Size = new System.Drawing.Size(690, 50);
this.lb3.TabIndex = 5;
this.lb3.Text = "*";
this.lb3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb3.TextShadow = true;
this.lb3.TextVisible = true;
//
// panel3
//
this.panel3.Dock = System.Windows.Forms.DockStyle.Top;
this.panel3.Location = new System.Drawing.Point(8, 185);
this.panel3.Name = "panel3";
this.panel3.Size = new System.Drawing.Size(690, 5);
this.panel3.TabIndex = 13;
//
// lb2
//
this.lb2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb2.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb2.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.lb2.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb2.BorderSize = new System.Windows.Forms.Padding(0, 0, 0, 2);
this.lb2.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb2.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb2.Dock = System.Windows.Forms.DockStyle.Top;
this.lb2.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.lb2.ForeColor = System.Drawing.Color.Orange;
this.lb2.GradientEnable = true;
this.lb2.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb2.GradientRepeatBG = false;
this.lb2.isButton = false;
this.lb2.Location = new System.Drawing.Point(8, 135);
this.lb2.MouseDownColor = System.Drawing.Color.Yellow;
this.lb2.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb2.msg = null;
this.lb2.Name = "lb2";
this.lb2.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb2.ProgressBorderColor = System.Drawing.Color.Black;
this.lb2.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb2.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb2.ProgressEnable = false;
this.lb2.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb2.ProgressForeColor = System.Drawing.Color.Black;
this.lb2.ProgressMax = 100F;
this.lb2.ProgressMin = 0F;
this.lb2.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb2.ProgressValue = 0F;
this.lb2.ShadowColor = System.Drawing.Color.Black;
this.lb2.Sign = "";
this.lb2.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb2.SignColor = System.Drawing.Color.Yellow;
this.lb2.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb2.Size = new System.Drawing.Size(690, 50);
this.lb2.TabIndex = 4;
this.lb2.Text = "*";
this.lb2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb2.TextShadow = true;
this.lb2.TextVisible = true;
//
// panel2
//
this.panel2.Dock = System.Windows.Forms.DockStyle.Top;
this.panel2.Location = new System.Drawing.Point(8, 130);
this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(690, 5);
this.panel2.TabIndex = 12;
//
// lb1
//
this.lb1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb1.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb1.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.lb1.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb1.BorderSize = new System.Windows.Forms.Padding(0, 0, 0, 2);
this.lb1.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb1.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb1.Dock = System.Windows.Forms.DockStyle.Top;
this.lb1.Font = new System.Drawing.Font("맑은 고딕", 18F, System.Drawing.FontStyle.Bold);
this.lb1.ForeColor = System.Drawing.Color.Orange;
this.lb1.GradientEnable = true;
this.lb1.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb1.GradientRepeatBG = false;
this.lb1.isButton = false;
this.lb1.Location = new System.Drawing.Point(8, 80);
this.lb1.MouseDownColor = System.Drawing.Color.Yellow;
this.lb1.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb1.msg = null;
this.lb1.Name = "lb1";
this.lb1.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb1.ProgressBorderColor = System.Drawing.Color.Black;
this.lb1.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb1.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb1.ProgressEnable = false;
this.lb1.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb1.ProgressForeColor = System.Drawing.Color.Black;
this.lb1.ProgressMax = 100F;
this.lb1.ProgressMin = 0F;
this.lb1.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb1.ProgressValue = 0F;
this.lb1.ShadowColor = System.Drawing.Color.Black;
this.lb1.Sign = "";
this.lb1.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb1.SignColor = System.Drawing.Color.Yellow;
this.lb1.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb1.Size = new System.Drawing.Size(690, 50);
this.lb1.TabIndex = 2;
this.lb1.Text = "*";
this.lb1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb1.TextShadow = true;
this.lb1.TextVisible = true;
//
// panel1
//
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(8, 75);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(690, 5);
this.panel1.TabIndex = 11;
//
// lbTitle
//
this.lbTitle.BackColor = System.Drawing.Color.DeepSkyBlue;
this.lbTitle.BackColor2 = System.Drawing.Color.DodgerBlue;
this.lbTitle.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lbTitle.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lbTitle.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lbTitle.BorderColorOver = System.Drawing.Color.Gray;
this.lbTitle.BorderSize = new System.Windows.Forms.Padding(1);
this.lbTitle.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lbTitle.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lbTitle.Dock = System.Windows.Forms.DockStyle.Top;
this.lbTitle.Font = new System.Drawing.Font("맑은 고딕", 30F, System.Drawing.FontStyle.Bold);
this.lbTitle.ForeColor = System.Drawing.Color.WhiteSmoke;
this.lbTitle.GradientEnable = true;
this.lbTitle.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lbTitle.GradientRepeatBG = false;
this.lbTitle.isButton = false;
this.lbTitle.Location = new System.Drawing.Point(8, 8);
this.lbTitle.MouseDownColor = System.Drawing.Color.Yellow;
this.lbTitle.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lbTitle.msg = null;
this.lbTitle.Name = "lbTitle";
this.lbTitle.ProgressBorderColor = System.Drawing.Color.Black;
this.lbTitle.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lbTitle.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lbTitle.ProgressEnable = false;
this.lbTitle.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lbTitle.ProgressForeColor = System.Drawing.Color.Black;
this.lbTitle.ProgressMax = 100F;
this.lbTitle.ProgressMin = 0F;
this.lbTitle.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lbTitle.ProgressValue = 0F;
this.lbTitle.ShadowColor = System.Drawing.Color.FromArgb(((int)(((byte)(50)))), ((int)(((byte)(50)))), ((int)(((byte)(50)))));
this.lbTitle.Sign = "";
this.lbTitle.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lbTitle.SignColor = System.Drawing.Color.Yellow;
this.lbTitle.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lbTitle.Size = new System.Drawing.Size(690, 67);
this.lbTitle.TabIndex = 3;
this.lbTitle.Text = "TITLE";
this.lbTitle.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lbTitle.TextShadow = true;
this.lbTitle.TextVisible = true;
this.lbTitle.Click += new System.EventHandler(this.lbTitle_Click);
//
// panel9
//
this.panel9.BackColor = System.Drawing.Color.White;
this.panel9.Controls.Add(this.arPanel1);
this.panel9.Dock = System.Windows.Forms.DockStyle.Fill;
this.panel9.Location = new System.Drawing.Point(1, 1);
this.panel9.Name = "panel9";
this.panel9.Padding = new System.Windows.Forms.Padding(10);
this.panel9.Size = new System.Drawing.Size(726, 562);
this.panel9.TabIndex = 5;
//
// fMsgQuestion
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.BackColor = System.Drawing.Color.Black;
this.ClientSize = new System.Drawing.Size(728, 564);
this.Controls.Add(this.panel9);
this.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.KeyPreview = true;
this.MaximizeBox = false;
this.Name = "fMsgQuestion";
this.Padding = new System.Windows.Forms.Padding(1);
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Message Window";
this.TopMost = true;
this.Load += new System.EventHandler(this.fMsg_Load);
this.arPanel1.ResumeLayout(false);
this.panel10.ResumeLayout(false);
this.panel9.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
public arCtl.arLabel lb1;
private arCtl.arPanel arPanel1;
public arCtl.arLabel lbTitle;
public arCtl.arLabel lb7;
public arCtl.arLabel lb6;
public arCtl.arLabel lb5;
public arCtl.arLabel lb4;
public arCtl.arLabel lb3;
public arCtl.arLabel lb2;
private System.Windows.Forms.Timer tmBlink;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Panel panel2;
private System.Windows.Forms.Panel panel4;
private System.Windows.Forms.Panel panel3;
private System.Windows.Forms.Panel panel5;
private System.Windows.Forms.Panel panel6;
private System.Windows.Forms.Panel panel7;
private System.Windows.Forms.Panel panel8;
private System.Windows.Forms.Panel panel9;
private System.Windows.Forms.Panel panel10;
private System.Windows.Forms.Panel panSplite;
public arCtl.arLabel btYes;
public arCtl.arLabel btNo;
}
}

View File

@@ -0,0 +1,181 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Project
{
public partial class fMsgQuestion : Form
{
private Boolean fMove = false;
private Point MDownPos;
private string _msg = string.Empty;
public Boolean DialogMode = false;
public fMsgQuestion(string msg,string but1Text,string but2Text, string filename = "")
{
EnableUserClose = true;
InitializeComponent();
this.FormClosing += fMsgWindow_FormClosing;
this.KeyDown += (s1, e1) => { if (EnableUserClose && e1.KeyCode == Keys.Escape) this.Close(); };
this._msg = msg;
if (filename != "")
{
string fullname = AppDomain.CurrentDomain.BaseDirectory + "Image\\" + filename;
if (System.IO.File.Exists(fullname))
{
var img = this.lb1.BackgroundImage;
this.lb1.BackgroundImage = Image.FromFile(fullname);
if (img != null) img.Dispose();
}
else
{
msg += "\nNo Image File\n" + filename;
}
}
else
{
var img = this.lb1.BackgroundImage;
this.lb1.BackgroundImage = null;
if (img != null) img.Dispose();
}
btYes.Text = but1Text;
if (but2Text.isEmpty())
{
btNo.Visible = false;
panSplite.Visible = false;
}
setMessage(msg);
this.lbTitle.MouseMove += label1_MouseMove;
lbTitle.MouseUp += label1_MouseUp;
lbTitle.MouseDown += label1_MouseDown;
lbTitle.MouseDoubleClick += label1_MouseDoubleClick;
//btClose.Click += arLabel1_Click;
}
void fMsgWindow_FormClosing(object sender, FormClosingEventArgs e)
{
if (DialogMode == false)
{
e.Cancel = true;
return;
}
}
private void fMsg_Load(object sender, EventArgs e)
{
}
/// <summary>
/// 사용자가 이 창을 닫을수 있는가?
/// </summary>
public Boolean EnableUserClose
{
get { return _enableuserclose; }
set
{
_enableuserclose = value;
// if (!EnableUserClose) btClose.Visible = false;
}
}
private Boolean _enableuserclose = true;
public void setMessage(string msg)
{
//msg를 분리해서 표시를 한다.
var lbs = new arCtl.arLabel[] { lbTitle, lb1, lb2, lb3, lb4, lb5, lb6, lb7 };
var lineBuf = msg.Replace("\r", "").Replace("\n\n", "\n").Split('\n');
int maxLine = Math.Min(lbs.Length, lineBuf.Length);
for (int i = 0; i < lbs.Length; i++) //최대줄을 넘어가는건 표시불가
{
if (i >= lineBuf.Length)
{
lbs[i].Text = string.Empty;
}
else
{
if (i > 0) lbs[i].Text = string.Format("{1}", i, lineBuf[i]);
else lbs[i].Text = lineBuf[i];
}
}
}
private void label1_MouseMove(object sender, MouseEventArgs e)
{
if (fMove)
{
Point offset = new Point(e.X - MDownPos.X, e.Y - MDownPos.Y);
this.Left += offset.X;
this.Top += offset.Y;
offset = new Point(0, 0);
}
}
private void label1_MouseUp(object sender, MouseEventArgs e)
{
fMove = false;
}
private void label1_MouseDown(object sender, MouseEventArgs e)
{
MDownPos = new Point(e.X, e.Y);
fMove = true;
}
private void label1_MouseDoubleClick(object sender, MouseEventArgs e)
{
if (EnableUserClose)
{
if (DialogMode == false) this.Visible = false;
else this.Close();
}
}
private void lbTitle_Click(object sender, EventArgs e)
{
if (EnableUserClose)
{
if (DialogMode == false) this.Visible = false;
else this.Close();
}
}
private void tmBlink_Tick(object sender, EventArgs e)
{
var bg1 = lbTitle.BackColor;
var bg2 = lbTitle.BackColor2;
lbTitle.BackColor = bg2;
lbTitle.BackColor2 = bg1;
}
private void btYes_Click(object sender, EventArgs e)
{
this.DialogResult = System.Windows.Forms.DialogResult.Yes;
}
private void btNo_Click(object sender, EventArgs e)
{
this.Close();
}
private void arPanel1_Paint(object sender, PaintEventArgs e)
{
}
}
}

View File

@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="tmBlink.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,94 @@
namespace Project.Dialog
{
partial class fPassword
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(fPassword));
this.tbInput = new System.Windows.Forms.TextBox();
this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.touchKey1 = new arCtl.TouchKey();
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();
this.SuspendLayout();
//
// tbInput
//
this.tbInput.Font = new System.Drawing.Font("Calibri", 20.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.tbInput.Location = new System.Drawing.Point(26, 140);
this.tbInput.Name = "tbInput";
this.tbInput.PasswordChar = '●';
this.tbInput.Size = new System.Drawing.Size(235, 40);
this.tbInput.TabIndex = 1;
this.tbInput.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// pictureBox1
//
this.pictureBox1.Image = ((System.Drawing.Image)(resources.GetObject("pictureBox1.Image")));
this.pictureBox1.Location = new System.Drawing.Point(91, 23);
this.pictureBox1.Name = "pictureBox1";
this.pictureBox1.Size = new System.Drawing.Size(96, 96);
this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;
this.pictureBox1.TabIndex = 3;
this.pictureBox1.TabStop = false;
//
// touchKey1
//
this.touchKey1.Location = new System.Drawing.Point(26, 194);
this.touchKey1.Margin = new System.Windows.Forms.Padding(6, 11, 6, 11);
this.touchKey1.Name = "touchKey1";
this.touchKey1.Size = new System.Drawing.Size(235, 260);
this.touchKey1.TabIndex = 5;
this.touchKey1.keyClick += new arCtl.TouchKey.KeyClickHandler(this.touchKey1_keyClick);
//
// fPassword
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.ClientSize = new System.Drawing.Size(284, 470);
this.Controls.Add(this.touchKey1);
this.Controls.Add(this.pictureBox1);
this.Controls.Add(this.tbInput);
this.Font = new System.Drawing.Font("Calibri", 14.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.KeyPreview = true;
this.MaximizeBox = false;
this.MinimizeBox = false;
this.Name = "fPassword";
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Enter Password";
this.TopMost = true;
((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.PictureBox pictureBox1;
public System.Windows.Forms.TextBox tbInput;
private arCtl.TouchKey touchKey1;
}
}

View File

@@ -0,0 +1,74 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Project.Dialog
{
public partial class fPassword : Form
{
public fPassword()
{
InitializeComponent();
this.tbInput.KeyDown += (s1, e1) => { if (e1.KeyCode == Keys.Enter) Confirm(); };
this.KeyPreview = true;
this.KeyDown += (s1, e1) => {
if (e1.KeyCode == Keys.Escape) this.Close();
};
}
private void Confirm()
{
string id = tbInput.Text.Trim();
if (id.isEmpty())
{
tbInput.Focus();
return;
}
DialogResult = DialogResult.OK;
}
private void touchKey1_keyClick(string key)
{
if (key == "BACK" || key == "◁")
{
if (!tbInput.Text.isEmpty())
{
if (tbInput.Text.Length == 1) tbInput.Text = "";
else tbInput.Text = tbInput.Text.Substring(0, tbInput.Text.Length - 1);
}
//if (tbInput.Text == "") tbInput.Text = "0";
}
else if (key == "CLEAR" || key == "RESET" || key == "◀")
{
tbInput.Text = "0";
}
else if (key == "ENTER" || key == "ENT")
{
Confirm();
}
else
{
if (tbInput.SelectionLength > 0 && tbInput.Text.Length == tbInput.SelectionLength)
{
tbInput.Text = key;
}
else if (tbInput.SelectionLength > 0)
{
//선택된 영역을 대체해준다.
tbInput.SelectedText = key;
}
else tbInput.Text += key;
}
tbInput.SelectionLength = 0;
if (!tbInput.Text.isEmpty())
tbInput.SelectionStart = tbInput.Text.Length;
}
}
}

View File

@@ -0,0 +1,160 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
<data name="pictureBox1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>
iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAb
rwAAG68BXhqRHAAAABl0RVh0U29mdHdhcmUAd3d3Lmlua3NjYXBlLm9yZ5vuPBoAAAeoSURBVHhe7Z1r
bBRVFMfr+xHf8RUTHx/UoHwpLDMLLdHtzBSosWoijSZCq9GCRAN+I+oXwgfBqIgYXzF+gMT4KIoRgloM
RhOQLbRSQSyoLZYIhEcpnZ3u0u7u9Zzd0wDT41Z2753O7s4/+aWb3TvnnvPf2bkzd6YzFYECBQoUKFCg
QIECBQrkJ/VPn36tbYZrHFOfHzP1N4ANMUvfAX+7gAPwui8Dvsb3sp9tiJnh1x0rPM+2pkYwBoULNJaO
VldfCYbPdgx9FRjZCaQAUSAYYyd8KW/ZVvjRI5HIFdRdIJSIRC60Db0BTFoPJMg0lSQcS//cMbR67JvS
KD+JhokXw5r+DBiy12WQl3TB5u1pzIXSKn2JadMuixnhF6B43G5zpowHvbapLcTcKM3SFAySjVDsQVfx
PkL7B3OkdEtHcaPqdijw69EF+xPb1NcNztBupfSLW7D3sQiKGnQXWQQMwC9iDpVRfMLdPfg5r2EKKy6g
hqLbdbVnVN1IB0V8UUVHODoQCV1P5flbA6Z+NyTdM7qIoqf7ZG34LirTn4Kj2HszexJ8AaXAAduaeg+V
6y/h2hEz9CNM0qXGwXhk6h1Utj8E28ib4IjyTybZksSx9D+wZip/fCXq7rwE9pu3cImWOD/5YgoDzH+f
Sa4scMzwO2TD+AgPVLjEygvtCbLDW+FABAn0j06ozLD0vrgVuo1s8U7wzbeyCZUn35It3sg2tceYJMoa
PNtG9qhVZo7H1HvdCXiB83i9OPXBKpFs2yrSfcdFemAgC7zG9/AzbMMt6wH7RX3ocrJJnRxDf5npXC0z
q8RQy8dCDA+LMQVtsC0uw8ZSiaEvJpvUiNb+Y6M6VojzkCGSne3k7v9Xcmd7ZlkupkIOKz2rRnP7XMdq
sMIi2bGdLD13JTvaMjHY2IqwzfBzZJdciSUV50MH3e4OVZJ4cxlZeVrpQwdFYuVyMdg0WziPmBnwNb6H
n7mVWPEKG1sVOE0hKirOI9vkKWZpFtehMmZNF+n+E2RjVqk9uzKGs+0B/Cy1Zze1zird3wfjQTXbXhV4
QRjZJk8QeLW7I5Uklr5EFmaVjtmwh/Mg2/ZMsE3aidFSWSWWvsi2VchHZJsc0eAbc3WilOFNG8m+rIY+
Wc224xj6dA0tldVw60a2nUJOSt0ldazww0wnSkn19pB9WcUXNrPtOOKLmmmprFJ/97DtVOLUhB8g+woX
XavJdqSK9OAg2ZeVU1/DtuPA3c8zlXYctp1SDH0F2Ve4INguthOFuMW1yYVbXBvF7CT7ChNeDQDB0q7g
ynGLa5MLt7g2ikmdnDntOrIxf8VMbRYTXCrx+Y0i2dIi0lujQrT/qpT0lmimr3jzXDYXuYRrycb8pfro
N77gKSF2dLJmKQX6jM9vYnOShW3oz5ON+QsG4He54LJIrfuKN8gDkl98yeYkCzgqfptszF8wAH/PBZeF
2NbOmuMJ23awOUnD0r8jG/MXBNo9KrBEWGM8hMtJIp1kY/6CIPtdQaXCmeIlXE4S6SYb8xcEOe4KKhXO
FC/hcpLIUbIxf0GQU66gUuFM8RIuJ4kkyMb8BUGGXEGlwpkyFonWzaJrbpNo07QMXXMaRXxjK9t2LLic
JCLlC/DVJgjNbwuFxNYJE84C3zu16Qd2mVxwOUlEyibIV4Mwrvlu80fY2/Qku0wuuJwkImEQVjwRx5mS
i2jlJNZ8JDp5MrtMLricJFL4hJzyAzHGlFxEKytZ85HoJJ99ATIOxPBwmg0uCc6UXHTNmcuaj/hvE6St
JBvzF04o8cHlwJmSi8H13/zHIDzFd4OwbWkLyMb8hVOqXHBZcKaMxchuKI4HuNnZ29iUl/kIl5MsYOU1
yMb8pfqEDGeKl3A5SULOCRkUBPvFFVwanClewuUkie1kX+HCE8xMB1LgTPESLidJvEr2FS6Vl6VwpngJ
l5MMpF6WIiKRSyHoCXcnMsCTIpwxnvDzdjYnCRyT/h+Utql/yHRUMHhakDXHA5Ita9mcCsW29PfINnmy
De0+rrNCic9rHL+T8oqujBgwtCqyTZ7w8nT4FfzFdVgomctS8JfQ1sGbJRPoA/tSZb6yy9NRjqE/y3Ua
cBrH0prJLvkSodBF0InS6ekipxs9IrvUSPXcUDGDWwiySZ3wn9BUjQVFzj68cQnZpFaqJ+iKklrNJHu8
kWNqa9lEyhFD/4xs8U7BzTqI8bpZBwrnOyAJz/93wEekHGNKHdkxPopZ2mtMYuWBpS8nG8ZPwS3LfKDj
deGrICFlJ218SAc+bILK94ec2upbILFSvGGrm3123aQbqGx/KXvjVl89F0A2vb69ceuIYhHt5piptTPJ
FzeZe2H75F6hYwmfXARJ/ziqiOJlc58VuprKKw6JhoYLbEtfAsnLeBLSeJGEo9zFyub3vRBenASFHHYV
VgwcwmeYURnFreARJj4R3sgICvzNXbCP2G3XavdTuqWp4DFWPpEvHuRmhH8vuwe5cbJrtIk4sQWmePGM
sR7cO8M+qftAI8I1MXO2LftltAHJM4zLF4gRjsLavgxvPFj2a/u56ESk8hrcFTzrcbbZo+xuPBFCBmdO
imTey3521uNsMQaFCxQoUKBAgQIFChQoUCAfqKLiXwYEOVtR8EleAAAAAElFTkSuQmCC
</value>
</data>
</root>

View File

@@ -0,0 +1,61 @@
namespace Project.Dialog
{
partial class fTouchKey
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.touchKeyCalc1 = new arCtl.TouchKeyCalc();
this.SuspendLayout();
//
// touchKeyCalc1
//
this.touchKeyCalc1.Dock = System.Windows.Forms.DockStyle.Fill;
this.touchKeyCalc1.Font = new System.Drawing.Font("Consolas", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.touchKeyCalc1.Location = new System.Drawing.Point(0, 0);
this.touchKeyCalc1.Margin = new System.Windows.Forms.Padding(3, 4, 3, 4);
this.touchKeyCalc1.Name = "touchKeyCalc1";
this.touchKeyCalc1.Size = new System.Drawing.Size(374, 330);
this.touchKeyCalc1.TabIndex = 0;
this.touchKeyCalc1.Load += new System.EventHandler(this.touchKeyCalc1_Load);
//
// fTouchKey
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(374, 330);
this.Controls.Add(this.touchKeyCalc1);
this.Name = "fTouchKey";
this.Text = "fTouchKey";
this.ResumeLayout(false);
}
#endregion
private arCtl.TouchKeyCalc touchKeyCalc1;
}
}

View File

@@ -0,0 +1,24 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Project.Dialog
{
public partial class fTouchKey : Form
{
public fTouchKey()
{
InitializeComponent();
}
private void touchKeyCalc1_Load(object sender, EventArgs e)
{
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,187 @@
namespace Project.Dialog
{
partial class fTouchKeyFull
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.touchKeyFull1 = new arCtl.TouchKeyFull();
this.tbInput = new System.Windows.Forms.TextBox();
this.lbTitle = new arCtl.arLabel();
this.button1 = new System.Windows.Forms.Button();
this.panel1 = new System.Windows.Forms.Panel();
this.button3 = new System.Windows.Forms.Button();
this.button2 = new System.Windows.Forms.Button();
this.panel1.SuspendLayout();
this.SuspendLayout();
//
// touchKeyFull1
//
this.touchKeyFull1.Dock = System.Windows.Forms.DockStyle.Fill;
this.touchKeyFull1.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.touchKeyFull1.Location = new System.Drawing.Point(6, 96);
this.touchKeyFull1.Name = "touchKeyFull1";
this.touchKeyFull1.Size = new System.Drawing.Size(1088, 359);
this.touchKeyFull1.TabIndex = 0;
this.touchKeyFull1.keyClick += new arCtl.TouchKeyFull.KeyClickHandler(this.touchKeyFull1_keyClick);
//
// tbInput
//
this.tbInput.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.tbInput.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
this.tbInput.Dock = System.Windows.Forms.DockStyle.Fill;
this.tbInput.Font = new System.Drawing.Font("맑은 고딕", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(129)));
this.tbInput.ForeColor = System.Drawing.Color.White;
this.tbInput.Location = new System.Drawing.Point(100, 0);
this.tbInput.Name = "tbInput";
this.tbInput.Size = new System.Drawing.Size(888, 46);
this.tbInput.TabIndex = 0;
this.tbInput.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// lbTitle
//
this.lbTitle.BackColor = System.Drawing.Color.Gray;
this.lbTitle.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(100)))), ((int)(((byte)(100)))), ((int)(((byte)(100)))));
this.lbTitle.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lbTitle.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lbTitle.BorderColorOver = System.Drawing.Color.DarkBlue;
this.lbTitle.BorderSize = new System.Windows.Forms.Padding(1);
this.lbTitle.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lbTitle.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lbTitle.Dock = System.Windows.Forms.DockStyle.Top;
this.lbTitle.Font = new System.Drawing.Font("Consolas", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.lbTitle.ForeColor = System.Drawing.Color.White;
this.lbTitle.GradientEnable = true;
this.lbTitle.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.ForwardDiagonal;
this.lbTitle.GradientRepeatBG = false;
this.lbTitle.isButton = false;
this.lbTitle.Location = new System.Drawing.Point(6, 5);
this.lbTitle.MouseDownColor = System.Drawing.Color.Yellow;
this.lbTitle.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lbTitle.msg = null;
this.lbTitle.Name = "lbTitle";
this.lbTitle.ProgressBorderColor = System.Drawing.Color.Black;
this.lbTitle.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lbTitle.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lbTitle.ProgressEnable = false;
this.lbTitle.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lbTitle.ProgressForeColor = System.Drawing.Color.Black;
this.lbTitle.ProgressMax = 100F;
this.lbTitle.ProgressMin = 0F;
this.lbTitle.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lbTitle.ProgressValue = 0F;
this.lbTitle.ShadowColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(20)))));
this.lbTitle.Sign = "";
this.lbTitle.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lbTitle.SignColor = System.Drawing.Color.Yellow;
this.lbTitle.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lbTitle.Size = new System.Drawing.Size(1088, 44);
this.lbTitle.TabIndex = 2;
this.lbTitle.Text = "INPUT";
this.lbTitle.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lbTitle.TextShadow = true;
this.lbTitle.TextVisible = true;
//
// button1
//
this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Right)));
this.button1.Font = new System.Drawing.Font("Consolas", 9F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.button1.Location = new System.Drawing.Point(1028, 11);
this.button1.Margin = new System.Windows.Forms.Padding(0);
this.button1.Name = "button1";
this.button1.Size = new System.Drawing.Size(60, 34);
this.button1.TabIndex = 3;
this.button1.Text = "닫기";
this.button1.UseVisualStyleBackColor = true;
this.button1.Click += new System.EventHandler(this.button1_Click);
//
// panel1
//
this.panel1.Controls.Add(this.tbInput);
this.panel1.Controls.Add(this.button3);
this.panel1.Controls.Add(this.button2);
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(6, 49);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(1088, 47);
this.panel1.TabIndex = 4;
//
// button3
//
this.button3.Dock = System.Windows.Forms.DockStyle.Right;
this.button3.Location = new System.Drawing.Point(988, 0);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(100, 47);
this.button3.TabIndex = 1;
this.button3.Text = "1문자 삭제";
this.button3.UseVisualStyleBackColor = true;
this.button3.Click += new System.EventHandler(this.button3_Click);
//
// button2
//
this.button2.Dock = System.Windows.Forms.DockStyle.Left;
this.button2.Location = new System.Drawing.Point(0, 0);
this.button2.Name = "button2";
this.button2.Size = new System.Drawing.Size(100, 47);
this.button2.TabIndex = 0;
this.button2.Text = "1문자 삭제";
this.button2.UseVisualStyleBackColor = true;
this.button2.Click += new System.EventHandler(this.button2_Click);
//
// fTouchKeyFull
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(18)))), ((int)(((byte)(18)))), ((int)(((byte)(18)))));
this.ClientSize = new System.Drawing.Size(1100, 460);
this.Controls.Add(this.touchKeyFull1);
this.Controls.Add(this.panel1);
this.Controls.Add(this.button1);
this.Controls.Add(this.lbTitle);
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.KeyPreview = true;
this.Name = "fTouchKeyFull";
this.Padding = new System.Windows.Forms.Padding(6, 5, 6, 5);
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "fTouchKeyFull";
this.Load += new System.EventHandler(this.fTouchKeyFull_Load);
this.panel1.ResumeLayout(false);
this.panel1.PerformLayout();
this.ResumeLayout(false);
}
#endregion
private arCtl.TouchKeyFull touchKeyFull1;
private arCtl.arLabel lbTitle;
public System.Windows.Forms.TextBox tbInput;
private System.Windows.Forms.Button button1;
private System.Windows.Forms.Panel panel1;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.Button button2;
}
}

View File

@@ -0,0 +1,142 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Project.Dialog
{
public partial class fTouchKeyFull : Form
{
public fTouchKeyFull(string title, string value)
{
InitializeComponent();
this.lbTitle.Text = title;
this.tbInput.Text = value;
this.KeyDown += (s1, e1) =>
{
if (e1.KeyCode == Keys.Escape)
this.Close();
};
this.lbTitle.MouseMove += LbTitle_MouseMove;
this.lbTitle.MouseUp += LbTitle_MouseUp;
this.lbTitle.MouseDown += LbTitle_MouseDown;
}
private void fTouchKeyFull_Load(object sender, EventArgs e)
{
this.Show();
//'Application.DoEvents();
this.tbInput.SelectAll();
this.tbInput.Focus();
}
#region "Mouse Form Move"
private Boolean fMove = false;
private Point MDownPos;
private void LbTitle_MouseMove(object sender, MouseEventArgs e)
{
if (fMove)
{
Point offset = new Point(e.X - MDownPos.X, e.Y - MDownPos.Y);
this.Left += offset.X;
this.Top += offset.Y;
offset = new Point(0, 0);
}
}
private void LbTitle_MouseUp(object sender, MouseEventArgs e)
{
fMove = false;
}
private void LbTitle_MouseDown(object sender, MouseEventArgs e)
{
MDownPos = new Point(e.X, e.Y);
fMove = true;
}
#endregion
private void touchKeyFull1_keyClick(string key)
{
switch (key)
{
case "CLR":
this.tbInput.Text = string.Empty;
break;
case "BACK":
if (this.tbInput.SelectionLength > 0)
{
//특정영역이 선택되었다
var head = tbInput.Text.Substring(0, tbInput.SelectionStart);
var tail = tbInput.Text.Substring(tbInput.SelectionLength + tbInput.SelectionStart);
tbInput.Text = head + tail;
tbInput.SelectionStart = head.Length;
tbInput.SelectionLength = 0;
}
else
{
var si = this.tbInput.SelectionStart - 1;
var sl = this.tbInput.SelectionLength;
if(si >= 0)
{
var head = tbInput.Text.Substring(0, si);
var tail = tbInput.Text.Substring(si + 1);
tbInput.Text = head + tail;
tbInput.SelectionStart = head.Length;
tbInput.SelectionLength = 0;
}
}
break;
case "ENTER":
this.DialogResult = DialogResult.OK;
break;
default:
var si2 = this.tbInput.SelectionStart ;
var head2 = tbInput.Text.Substring(0, si2);
var tail2 = tbInput.Text.Substring(si2 );
tbInput.Text = head2 + key + tail2;
tbInput.SelectionStart = head2.Length+1;
tbInput.SelectionLength = 0;
//this.tbInput.Text += key;
//this.tbInput.SelectionStart = this.tbInput.TextLength;
break;
}
this.tbInput.Focus();
}
private void button1_Click(object sender, EventArgs e)
{
this.Close();
}
private void button2_Click(object sender, EventArgs e)
{
//앞에서 삭제
if (this.tbInput.Text.Length < 1) return;
if (this.tbInput.Text.Length < 2) tbInput.Text = string.Empty;
else tbInput.Text = tbInput.Text.Substring(1);
tbInput.SelectionStart = 0;// this.tbInput.TextLength;
tbInput.Focus();
}
private void button3_Click(object sender, EventArgs e)
{
//두에서 삭제
if (this.tbInput.Text.Length < 1) return;
if (this.tbInput.Text.Length < 2) tbInput.Text = string.Empty;
else tbInput.Text = tbInput.Text.Substring(0, tbInput.Text.Length - 1);
tbInput.SelectionStart = this.tbInput.TextLength;
tbInput.Focus();
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,850 @@
namespace Project.Dialog
{
partial class fTouchNumDot
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel();
this.arLabel1 = new arCtl.arLabel();
this.arLabel2 = new arCtl.arLabel();
this.arLabel3 = new arCtl.arLabel();
this.arLabel4 = new arCtl.arLabel();
this.arLabel5 = new arCtl.arLabel();
this.arLabel6 = new arCtl.arLabel();
this.arLabel7 = new arCtl.arLabel();
this.arLabel8 = new arCtl.arLabel();
this.arLabel9 = new arCtl.arLabel();
this.arLabel11 = new arCtl.arLabel();
this.arLabel12 = new arCtl.arLabel();
this.arLabel13 = new arCtl.arLabel();
this.arLabel14 = new arCtl.arLabel();
this.arLabel15 = new arCtl.arLabel();
this.arLabel10 = new arCtl.arLabel();
this.tbInput = new System.Windows.Forms.TextBox();
this.panel1 = new System.Windows.Forms.Panel();
this.tableLayoutPanel1.SuspendLayout();
this.SuspendLayout();
//
// tableLayoutPanel1
//
this.tableLayoutPanel1.ColumnCount = 4;
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.ColumnStyles.Add(new System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.Controls.Add(this.arLabel1, 0, 0);
this.tableLayoutPanel1.Controls.Add(this.arLabel2, 1, 0);
this.tableLayoutPanel1.Controls.Add(this.arLabel3, 2, 0);
this.tableLayoutPanel1.Controls.Add(this.arLabel4, 2, 1);
this.tableLayoutPanel1.Controls.Add(this.arLabel5, 1, 1);
this.tableLayoutPanel1.Controls.Add(this.arLabel6, 0, 1);
this.tableLayoutPanel1.Controls.Add(this.arLabel7, 0, 2);
this.tableLayoutPanel1.Controls.Add(this.arLabel8, 1, 2);
this.tableLayoutPanel1.Controls.Add(this.arLabel9, 2, 2);
this.tableLayoutPanel1.Controls.Add(this.arLabel11, 1, 3);
this.tableLayoutPanel1.Controls.Add(this.arLabel12, 3, 0);
this.tableLayoutPanel1.Controls.Add(this.arLabel13, 2, 3);
this.tableLayoutPanel1.Controls.Add(this.arLabel14, 0, 3);
this.tableLayoutPanel1.Controls.Add(this.arLabel15, 3, 1);
this.tableLayoutPanel1.Controls.Add(this.arLabel10, 3, 2);
this.tableLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.tableLayoutPanel1.Location = new System.Drawing.Point(5, 50);
this.tableLayoutPanel1.Name = "tableLayoutPanel1";
this.tableLayoutPanel1.RowCount = 4;
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.RowStyles.Add(new System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 25F));
this.tableLayoutPanel1.Size = new System.Drawing.Size(324, 265);
this.tableLayoutPanel1.TabIndex = 1;
//
// arLabel1
//
this.arLabel1.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel1.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel1.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel1.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel1.BorderColorOver = System.Drawing.Color.Red;
this.arLabel1.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel1.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel1.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel1.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel1.ForeColor = System.Drawing.Color.White;
this.arLabel1.GradientEnable = false;
this.arLabel1.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel1.GradientRepeatBG = false;
this.arLabel1.isButton = true;
this.arLabel1.Location = new System.Drawing.Point(0, 0);
this.arLabel1.Margin = new System.Windows.Forms.Padding(0);
this.arLabel1.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel1.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel1.msg = null;
this.arLabel1.Name = "arLabel1";
this.arLabel1.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel1.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel1.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel1.ProgressEnable = false;
this.arLabel1.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel1.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel1.ProgressMax = 100F;
this.arLabel1.ProgressMin = 0F;
this.arLabel1.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel1.ProgressValue = 0F;
this.arLabel1.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel1.Sign = "";
this.arLabel1.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel1.SignColor = System.Drawing.Color.Yellow;
this.arLabel1.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel1.Size = new System.Drawing.Size(81, 66);
this.arLabel1.TabIndex = 0;
this.arLabel1.Tag = "1";
this.arLabel1.Text = "1";
this.arLabel1.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel1.TextShadow = false;
this.arLabel1.TextVisible = true;
this.arLabel1.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel2
//
this.arLabel2.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel2.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel2.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel2.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel2.BorderColorOver = System.Drawing.Color.Red;
this.arLabel2.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel2.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel2.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel2.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel2.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel2.ForeColor = System.Drawing.Color.White;
this.arLabel2.GradientEnable = false;
this.arLabel2.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel2.GradientRepeatBG = false;
this.arLabel2.isButton = true;
this.arLabel2.Location = new System.Drawing.Point(81, 0);
this.arLabel2.Margin = new System.Windows.Forms.Padding(0);
this.arLabel2.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel2.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel2.msg = null;
this.arLabel2.Name = "arLabel2";
this.arLabel2.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel2.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel2.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel2.ProgressEnable = false;
this.arLabel2.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel2.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel2.ProgressMax = 100F;
this.arLabel2.ProgressMin = 0F;
this.arLabel2.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel2.ProgressValue = 0F;
this.arLabel2.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel2.Sign = "";
this.arLabel2.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel2.SignColor = System.Drawing.Color.Yellow;
this.arLabel2.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel2.Size = new System.Drawing.Size(81, 66);
this.arLabel2.TabIndex = 0;
this.arLabel2.Tag = "2";
this.arLabel2.Text = "2";
this.arLabel2.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel2.TextShadow = false;
this.arLabel2.TextVisible = true;
this.arLabel2.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel3
//
this.arLabel3.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel3.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel3.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel3.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel3.BorderColorOver = System.Drawing.Color.Red;
this.arLabel3.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel3.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel3.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel3.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel3.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel3.ForeColor = System.Drawing.Color.White;
this.arLabel3.GradientEnable = false;
this.arLabel3.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel3.GradientRepeatBG = false;
this.arLabel3.isButton = true;
this.arLabel3.Location = new System.Drawing.Point(162, 0);
this.arLabel3.Margin = new System.Windows.Forms.Padding(0);
this.arLabel3.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel3.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel3.msg = null;
this.arLabel3.Name = "arLabel3";
this.arLabel3.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel3.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel3.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel3.ProgressEnable = false;
this.arLabel3.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel3.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel3.ProgressMax = 100F;
this.arLabel3.ProgressMin = 0F;
this.arLabel3.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel3.ProgressValue = 0F;
this.arLabel3.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel3.Sign = "";
this.arLabel3.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel3.SignColor = System.Drawing.Color.Yellow;
this.arLabel3.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel3.Size = new System.Drawing.Size(81, 66);
this.arLabel3.TabIndex = 0;
this.arLabel3.Tag = "3";
this.arLabel3.Text = "3";
this.arLabel3.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel3.TextShadow = false;
this.arLabel3.TextVisible = true;
this.arLabel3.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel4
//
this.arLabel4.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel4.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel4.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel4.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel4.BorderColorOver = System.Drawing.Color.Red;
this.arLabel4.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel4.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel4.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel4.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel4.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel4.ForeColor = System.Drawing.Color.White;
this.arLabel4.GradientEnable = false;
this.arLabel4.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel4.GradientRepeatBG = false;
this.arLabel4.isButton = true;
this.arLabel4.Location = new System.Drawing.Point(162, 66);
this.arLabel4.Margin = new System.Windows.Forms.Padding(0);
this.arLabel4.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel4.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel4.msg = null;
this.arLabel4.Name = "arLabel4";
this.arLabel4.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel4.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel4.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel4.ProgressEnable = false;
this.arLabel4.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel4.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel4.ProgressMax = 100F;
this.arLabel4.ProgressMin = 0F;
this.arLabel4.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel4.ProgressValue = 0F;
this.arLabel4.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel4.Sign = "";
this.arLabel4.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel4.SignColor = System.Drawing.Color.Yellow;
this.arLabel4.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel4.Size = new System.Drawing.Size(81, 66);
this.arLabel4.TabIndex = 0;
this.arLabel4.Tag = "6";
this.arLabel4.Text = "6";
this.arLabel4.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel4.TextShadow = false;
this.arLabel4.TextVisible = true;
this.arLabel4.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel5
//
this.arLabel5.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel5.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel5.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel5.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel5.BorderColorOver = System.Drawing.Color.Red;
this.arLabel5.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel5.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel5.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel5.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel5.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel5.ForeColor = System.Drawing.Color.White;
this.arLabel5.GradientEnable = false;
this.arLabel5.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel5.GradientRepeatBG = false;
this.arLabel5.isButton = true;
this.arLabel5.Location = new System.Drawing.Point(81, 66);
this.arLabel5.Margin = new System.Windows.Forms.Padding(0);
this.arLabel5.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel5.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel5.msg = null;
this.arLabel5.Name = "arLabel5";
this.arLabel5.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel5.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel5.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel5.ProgressEnable = false;
this.arLabel5.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel5.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel5.ProgressMax = 100F;
this.arLabel5.ProgressMin = 0F;
this.arLabel5.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel5.ProgressValue = 0F;
this.arLabel5.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel5.Sign = "";
this.arLabel5.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel5.SignColor = System.Drawing.Color.Yellow;
this.arLabel5.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel5.Size = new System.Drawing.Size(81, 66);
this.arLabel5.TabIndex = 0;
this.arLabel5.Tag = "5";
this.arLabel5.Text = "5";
this.arLabel5.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel5.TextShadow = false;
this.arLabel5.TextVisible = true;
this.arLabel5.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel6
//
this.arLabel6.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel6.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel6.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel6.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel6.BorderColorOver = System.Drawing.Color.Red;
this.arLabel6.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel6.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel6.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel6.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel6.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel6.ForeColor = System.Drawing.Color.White;
this.arLabel6.GradientEnable = false;
this.arLabel6.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel6.GradientRepeatBG = false;
this.arLabel6.isButton = true;
this.arLabel6.Location = new System.Drawing.Point(0, 66);
this.arLabel6.Margin = new System.Windows.Forms.Padding(0);
this.arLabel6.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel6.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel6.msg = null;
this.arLabel6.Name = "arLabel6";
this.arLabel6.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel6.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel6.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel6.ProgressEnable = false;
this.arLabel6.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel6.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel6.ProgressMax = 100F;
this.arLabel6.ProgressMin = 0F;
this.arLabel6.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel6.ProgressValue = 0F;
this.arLabel6.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel6.Sign = "";
this.arLabel6.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel6.SignColor = System.Drawing.Color.Yellow;
this.arLabel6.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel6.Size = new System.Drawing.Size(81, 66);
this.arLabel6.TabIndex = 0;
this.arLabel6.Tag = "4";
this.arLabel6.Text = "4";
this.arLabel6.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel6.TextShadow = false;
this.arLabel6.TextVisible = true;
this.arLabel6.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel7
//
this.arLabel7.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel7.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel7.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel7.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel7.BorderColorOver = System.Drawing.Color.Red;
this.arLabel7.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel7.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel7.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel7.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel7.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel7.ForeColor = System.Drawing.Color.White;
this.arLabel7.GradientEnable = false;
this.arLabel7.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel7.GradientRepeatBG = false;
this.arLabel7.isButton = true;
this.arLabel7.Location = new System.Drawing.Point(0, 132);
this.arLabel7.Margin = new System.Windows.Forms.Padding(0);
this.arLabel7.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel7.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel7.msg = null;
this.arLabel7.Name = "arLabel7";
this.arLabel7.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel7.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel7.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel7.ProgressEnable = false;
this.arLabel7.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel7.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel7.ProgressMax = 100F;
this.arLabel7.ProgressMin = 0F;
this.arLabel7.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel7.ProgressValue = 0F;
this.arLabel7.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel7.Sign = "";
this.arLabel7.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel7.SignColor = System.Drawing.Color.Yellow;
this.arLabel7.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel7.Size = new System.Drawing.Size(81, 66);
this.arLabel7.TabIndex = 0;
this.arLabel7.Tag = "7";
this.arLabel7.Text = "7";
this.arLabel7.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel7.TextShadow = false;
this.arLabel7.TextVisible = true;
this.arLabel7.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel8
//
this.arLabel8.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel8.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel8.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel8.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel8.BorderColorOver = System.Drawing.Color.Red;
this.arLabel8.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel8.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel8.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel8.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel8.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel8.ForeColor = System.Drawing.Color.White;
this.arLabel8.GradientEnable = false;
this.arLabel8.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel8.GradientRepeatBG = false;
this.arLabel8.isButton = true;
this.arLabel8.Location = new System.Drawing.Point(81, 132);
this.arLabel8.Margin = new System.Windows.Forms.Padding(0);
this.arLabel8.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel8.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel8.msg = null;
this.arLabel8.Name = "arLabel8";
this.arLabel8.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel8.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel8.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel8.ProgressEnable = false;
this.arLabel8.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel8.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel8.ProgressMax = 100F;
this.arLabel8.ProgressMin = 0F;
this.arLabel8.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel8.ProgressValue = 0F;
this.arLabel8.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel8.Sign = "";
this.arLabel8.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel8.SignColor = System.Drawing.Color.Yellow;
this.arLabel8.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel8.Size = new System.Drawing.Size(81, 66);
this.arLabel8.TabIndex = 0;
this.arLabel8.Tag = "8";
this.arLabel8.Text = "8";
this.arLabel8.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel8.TextShadow = false;
this.arLabel8.TextVisible = true;
this.arLabel8.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel9
//
this.arLabel9.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel9.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel9.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel9.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel9.BorderColorOver = System.Drawing.Color.Red;
this.arLabel9.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel9.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel9.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel9.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel9.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel9.ForeColor = System.Drawing.Color.White;
this.arLabel9.GradientEnable = false;
this.arLabel9.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel9.GradientRepeatBG = false;
this.arLabel9.isButton = true;
this.arLabel9.Location = new System.Drawing.Point(162, 132);
this.arLabel9.Margin = new System.Windows.Forms.Padding(0);
this.arLabel9.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel9.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel9.msg = null;
this.arLabel9.Name = "arLabel9";
this.arLabel9.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel9.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel9.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel9.ProgressEnable = false;
this.arLabel9.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel9.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel9.ProgressMax = 100F;
this.arLabel9.ProgressMin = 0F;
this.arLabel9.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel9.ProgressValue = 0F;
this.arLabel9.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel9.Sign = "";
this.arLabel9.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel9.SignColor = System.Drawing.Color.Yellow;
this.arLabel9.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel9.Size = new System.Drawing.Size(81, 66);
this.arLabel9.TabIndex = 0;
this.arLabel9.Tag = "9";
this.arLabel9.Text = "9";
this.arLabel9.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel9.TextShadow = false;
this.arLabel9.TextVisible = true;
this.arLabel9.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel11
//
this.arLabel11.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel11.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel11.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel11.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel11.BorderColorOver = System.Drawing.Color.Red;
this.arLabel11.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel11.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel11.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel11.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel11.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel11.ForeColor = System.Drawing.Color.White;
this.arLabel11.GradientEnable = false;
this.arLabel11.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel11.GradientRepeatBG = false;
this.arLabel11.isButton = true;
this.arLabel11.Location = new System.Drawing.Point(81, 198);
this.arLabel11.Margin = new System.Windows.Forms.Padding(0);
this.arLabel11.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel11.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel11.msg = null;
this.arLabel11.Name = "arLabel11";
this.arLabel11.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel11.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel11.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel11.ProgressEnable = false;
this.arLabel11.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel11.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel11.ProgressMax = 100F;
this.arLabel11.ProgressMin = 0F;
this.arLabel11.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel11.ProgressValue = 0F;
this.arLabel11.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel11.Sign = "";
this.arLabel11.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel11.SignColor = System.Drawing.Color.Yellow;
this.arLabel11.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel11.Size = new System.Drawing.Size(81, 67);
this.arLabel11.TabIndex = 0;
this.arLabel11.Tag = "0";
this.arLabel11.Text = "0";
this.arLabel11.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel11.TextShadow = false;
this.arLabel11.TextVisible = true;
this.arLabel11.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel12
//
this.arLabel12.BackColor = System.Drawing.Color.Gray;
this.arLabel12.BackColor2 = System.Drawing.Color.Gold;
this.arLabel12.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel12.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel12.BorderColorOver = System.Drawing.Color.Red;
this.arLabel12.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel12.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel12.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel12.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel12.Font = new System.Drawing.Font("Consolas", 12F);
this.arLabel12.ForeColor = System.Drawing.Color.White;
this.arLabel12.GradientEnable = true;
this.arLabel12.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel12.GradientRepeatBG = false;
this.arLabel12.isButton = true;
this.arLabel12.Location = new System.Drawing.Point(243, 0);
this.arLabel12.Margin = new System.Windows.Forms.Padding(0);
this.arLabel12.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel12.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel12.msg = null;
this.arLabel12.Name = "arLabel12";
this.arLabel12.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel12.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel12.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel12.ProgressEnable = false;
this.arLabel12.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel12.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel12.ProgressMax = 100F;
this.arLabel12.ProgressMin = 0F;
this.arLabel12.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel12.ProgressValue = 0F;
this.arLabel12.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel12.Sign = "";
this.arLabel12.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel12.SignColor = System.Drawing.Color.Yellow;
this.arLabel12.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel12.Size = new System.Drawing.Size(81, 66);
this.arLabel12.TabIndex = 0;
this.arLabel12.Tag = "B";
this.arLabel12.Text = "BACK";
this.arLabel12.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel12.TextShadow = false;
this.arLabel12.TextVisible = true;
this.arLabel12.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel13
//
this.arLabel13.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel13.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel13.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel13.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel13.BorderColorOver = System.Drawing.Color.Red;
this.arLabel13.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel13.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel13.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel13.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel13.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel13.ForeColor = System.Drawing.Color.White;
this.arLabel13.GradientEnable = false;
this.arLabel13.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel13.GradientRepeatBG = false;
this.arLabel13.isButton = true;
this.arLabel13.Location = new System.Drawing.Point(162, 198);
this.arLabel13.Margin = new System.Windows.Forms.Padding(0);
this.arLabel13.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel13.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel13.msg = null;
this.arLabel13.Name = "arLabel13";
this.arLabel13.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel13.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel13.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel13.ProgressEnable = false;
this.arLabel13.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel13.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel13.ProgressMax = 100F;
this.arLabel13.ProgressMin = 0F;
this.arLabel13.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel13.ProgressValue = 0F;
this.arLabel13.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel13.Sign = "";
this.arLabel13.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel13.SignColor = System.Drawing.Color.Yellow;
this.arLabel13.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel13.Size = new System.Drawing.Size(81, 67);
this.arLabel13.TabIndex = 0;
this.arLabel13.Tag = ".";
this.arLabel13.Text = ".";
this.arLabel13.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel13.TextShadow = false;
this.arLabel13.TextVisible = true;
this.arLabel13.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel14
//
this.arLabel14.BackColor = System.Drawing.Color.SkyBlue;
this.arLabel14.BackColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel14.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel14.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel14.BorderColorOver = System.Drawing.Color.Red;
this.arLabel14.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel14.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel14.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel14.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel14.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.arLabel14.ForeColor = System.Drawing.Color.White;
this.arLabel14.GradientEnable = false;
this.arLabel14.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel14.GradientRepeatBG = false;
this.arLabel14.isButton = true;
this.arLabel14.Location = new System.Drawing.Point(0, 198);
this.arLabel14.Margin = new System.Windows.Forms.Padding(0);
this.arLabel14.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel14.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel14.msg = null;
this.arLabel14.Name = "arLabel14";
this.arLabel14.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel14.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel14.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel14.ProgressEnable = false;
this.arLabel14.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel14.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel14.ProgressMax = 100F;
this.arLabel14.ProgressMin = 0F;
this.arLabel14.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel14.ProgressValue = 0F;
this.arLabel14.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel14.Sign = "";
this.arLabel14.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel14.SignColor = System.Drawing.Color.Yellow;
this.arLabel14.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel14.Size = new System.Drawing.Size(81, 67);
this.arLabel14.TabIndex = 0;
this.arLabel14.Tag = "-";
this.arLabel14.Text = "-";
this.arLabel14.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel14.TextShadow = false;
this.arLabel14.TextVisible = true;
this.arLabel14.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel15
//
this.arLabel15.BackColor = System.Drawing.Color.Gray;
this.arLabel15.BackColor2 = System.Drawing.Color.SteelBlue;
this.arLabel15.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel15.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel15.BorderColorOver = System.Drawing.Color.Red;
this.arLabel15.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel15.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel15.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel15.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel15.Font = new System.Drawing.Font("Consolas", 12F);
this.arLabel15.ForeColor = System.Drawing.Color.White;
this.arLabel15.GradientEnable = true;
this.arLabel15.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel15.GradientRepeatBG = false;
this.arLabel15.isButton = true;
this.arLabel15.Location = new System.Drawing.Point(243, 66);
this.arLabel15.Margin = new System.Windows.Forms.Padding(0);
this.arLabel15.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel15.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel15.msg = null;
this.arLabel15.Name = "arLabel15";
this.arLabel15.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel15.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel15.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel15.ProgressEnable = false;
this.arLabel15.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel15.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel15.ProgressMax = 100F;
this.arLabel15.ProgressMin = 0F;
this.arLabel15.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel15.ProgressValue = 0F;
this.arLabel15.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel15.Sign = "";
this.arLabel15.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel15.SignColor = System.Drawing.Color.Yellow;
this.arLabel15.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel15.Size = new System.Drawing.Size(81, 66);
this.arLabel15.TabIndex = 0;
this.arLabel15.Tag = "C";
this.arLabel15.Text = "CLEAR";
this.arLabel15.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel15.TextShadow = false;
this.arLabel15.TextVisible = true;
this.arLabel15.Click += new System.EventHandler(this.arLabel1_Click);
//
// arLabel10
//
this.arLabel10.BackColor = System.Drawing.Color.CadetBlue;
this.arLabel10.BackColor2 = System.Drawing.Color.Lime;
this.arLabel10.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.arLabel10.BorderColor = System.Drawing.Color.SteelBlue;
this.arLabel10.BorderColorOver = System.Drawing.Color.Red;
this.arLabel10.BorderSize = new System.Windows.Forms.Padding(2);
this.arLabel10.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.arLabel10.Cursor = System.Windows.Forms.Cursors.Hand;
this.arLabel10.Dock = System.Windows.Forms.DockStyle.Fill;
this.arLabel10.Font = new System.Drawing.Font("Consolas", 12F);
this.arLabel10.ForeColor = System.Drawing.Color.White;
this.arLabel10.GradientEnable = true;
this.arLabel10.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arLabel10.GradientRepeatBG = false;
this.arLabel10.isButton = true;
this.arLabel10.Location = new System.Drawing.Point(243, 132);
this.arLabel10.Margin = new System.Windows.Forms.Padding(0);
this.arLabel10.MouseDownColor = System.Drawing.Color.Yellow;
this.arLabel10.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.arLabel10.msg = null;
this.arLabel10.Name = "arLabel10";
this.arLabel10.ProgressBorderColor = System.Drawing.Color.Black;
this.arLabel10.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arLabel10.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arLabel10.ProgressEnable = false;
this.arLabel10.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.arLabel10.ProgressForeColor = System.Drawing.Color.Black;
this.arLabel10.ProgressMax = 100F;
this.arLabel10.ProgressMin = 0F;
this.arLabel10.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arLabel10.ProgressValue = 0F;
this.tableLayoutPanel1.SetRowSpan(this.arLabel10, 2);
this.arLabel10.ShadowColor = System.Drawing.Color.WhiteSmoke;
this.arLabel10.Sign = "";
this.arLabel10.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.arLabel10.SignColor = System.Drawing.Color.Yellow;
this.arLabel10.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.arLabel10.Size = new System.Drawing.Size(81, 133);
this.arLabel10.TabIndex = 0;
this.arLabel10.Tag = "E";
this.arLabel10.Text = "ENTER";
this.arLabel10.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.arLabel10.TextShadow = false;
this.arLabel10.TextVisible = true;
this.arLabel10.Click += new System.EventHandler(this.arLabel1_Click);
//
// tbInput
//
this.tbInput.Dock = System.Windows.Forms.DockStyle.Top;
this.tbInput.Font = new System.Drawing.Font("Calibri", 20.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.tbInput.Location = new System.Drawing.Point(5, 5);
this.tbInput.Name = "tbInput";
this.tbInput.Size = new System.Drawing.Size(324, 40);
this.tbInput.TabIndex = 2;
this.tbInput.TextAlign = System.Windows.Forms.HorizontalAlignment.Center;
//
// panel1
//
this.panel1.Dock = System.Windows.Forms.DockStyle.Top;
this.panel1.Location = new System.Drawing.Point(5, 45);
this.panel1.Name = "panel1";
this.panel1.Size = new System.Drawing.Size(324, 5);
this.panel1.TabIndex = 3;
//
// fTouchNumDot
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.ClientSize = new System.Drawing.Size(334, 320);
this.Controls.Add(this.tableLayoutPanel1);
this.Controls.Add(this.panel1);
this.Controls.Add(this.tbInput);
this.Name = "fTouchNumDot";
this.Padding = new System.Windows.Forms.Padding(5);
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Input Value";
this.Load += new System.EventHandler(this.fTouchNumDot_Load);
this.tableLayoutPanel1.ResumeLayout(false);
this.ResumeLayout(false);
this.PerformLayout();
}
#endregion
private System.Windows.Forms.TableLayoutPanel tableLayoutPanel1;
private arCtl.arLabel arLabel1;
private arCtl.arLabel arLabel2;
private arCtl.arLabel arLabel3;
private arCtl.arLabel arLabel4;
private arCtl.arLabel arLabel5;
private arCtl.arLabel arLabel6;
private arCtl.arLabel arLabel7;
private arCtl.arLabel arLabel8;
private arCtl.arLabel arLabel9;
private arCtl.arLabel arLabel10;
private arCtl.arLabel arLabel11;
private arCtl.arLabel arLabel12;
public System.Windows.Forms.TextBox tbInput;
private System.Windows.Forms.Panel panel1;
private arCtl.arLabel arLabel13;
private arCtl.arLabel arLabel14;
private arCtl.arLabel arLabel15;
}
}

View File

@@ -0,0 +1,85 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace Project.Dialog
{
public partial class fTouchNumDot : Form
{
public fTouchNumDot(string value)
{
InitializeComponent();
this.tbInput.KeyDown += (s1, e1) => { if (e1.KeyCode == Keys.Enter) Confirm(); };
this.KeyPreview = true;
this.tbInput.Text = value;
this.KeyDown += (s1, e1) =>
{
if (e1.KeyCode == Keys.Escape) this.Close();
};
}
private void fTouchNumDot_Load(object sender, EventArgs e)
{
this.tbInput.SelectAll();
this.tbInput.Focus();
}
private void Confirm()
{
string id = tbInput.Text.Trim();
if (id.isEmpty())
{
tbInput.Focus();
return;
}
DialogResult = DialogResult.OK;
}
public void ProcessKey(ref TextBox cmb_rfid, string key)
{
if (key == "B")
{
if (cmb_rfid.Text != "")
cmb_rfid.Text = cmb_rfid.Text.Substring(0, cmb_rfid.Text.Length - 1);
}
else if (key == "C")
{
cmb_rfid.Text = "";
}
else if (key == "E")
{
Confirm();
}
else
{
if (cmb_rfid.SelectionLength > 0 && cmb_rfid.TextLength == cmb_rfid.SelectionLength)
{
cmb_rfid.Text = key;
}
else if (cmb_rfid.SelectionLength > 0)
{
//선택된 영역을 대체해준다.
cmb_rfid.SelectedText = key;
}
else cmb_rfid.Text += key;
}
cmb_rfid.SelectionLength = 0;
if (cmb_rfid.Text != "")
cmb_rfid.SelectionStart = cmb_rfid.Text.Length;
}
private void arLabel1_Click(object sender, EventArgs e)
{
var ctl = sender as arCtl.arLabel;
ProcessKey(ref tbInput, ctl.Tag.ToString());
}
}
}

View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -0,0 +1,39 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Project
{
public partial class MessageWindow
{
public class CMessageData
{
public string Tag { get; set; }
public string Message { get; set; }
public eWindowType WindowType { get; set; }
public System.Drawing.Size WindowSize { get; set; }
public Boolean EnableClose { get; set; }
public System.Drawing.Font FontTitle { get; set; }
public System.Drawing.Font FontContent { get; set; }
// public System.Windows.Forms.Form msgForm { get; set; }
public CMessageData()
{
Tag = string.Empty;
WindowType = eWindowType.information;
WindowSize = new System.Drawing.Size(900, 500);
EnableClose = true;
FontContent = null;
FontTitle = null;
// msgForm = null;
}
~CMessageData()
{
// if (msgForm != null) msgForm.Dispose();
if (FontTitle != null) FontTitle.Dispose();
if (FontContent != null) FontContent.Dispose();
}
}
}
}

View File

@@ -0,0 +1,219 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Windows.Forms;
namespace Project
{
public partial class MessageWindow
{
public enum eWindowPosition
{
center = 0,
top = 1,
bottom = 2
}
public enum eWindowType
{
information,
error,
attention,
}
fMsgWindow msgwin;
public MessageWindow()
{
msgwin = new fMsgWindow("");
msgwin.VisibleChanged += msgwin_VisibleChanged;
}
public bool needClose = false;
public Boolean needShow = false;
private CMessageData msgBuffer = new CMessageData();
public void setMessage(CMessageData msgData)
{
//마지막데잍와 동일하고 버퍼에 데이터가 있다면 처리하지 않는다.
if (msgBuffer == msgData) return;
//신규 메세지를 추가
msgBuffer = msgData;
//화면이 표시되어야하므로 플래그 설정
needShow = true;
}
public void setMessage(string msg,string tag,
eWindowType winType = eWindowType.error,
int width = 900, int height = 500,
Boolean enbClose = true,
Font fontTitle = null,
Font fontBody = null)
{
setMessage(new CMessageData()
{
Tag = tag,
EnableClose = enbClose,
FontContent = fontBody,
FontTitle = fontTitle,
Message = msg,
WindowSize = new Size(width, height),
WindowType = winType
});
}
public void setMessage(string msg,
eWindowType winType = eWindowType.error,
int width = 900, int height = 500,
Boolean enbClose = true,
Font fontTitle = null,
Font fontBody = null)
{
setMessage(new CMessageData()
{
EnableClose = enbClose,
FontContent = fontBody,
FontTitle = fontTitle,
Message = msg,
WindowSize = new Size(width, height),
WindowType = winType
});
}
/// <summary>
/// 메세지 버퍼의 내용을 폼으로 표시합니다.
/// UI 쓰레드를 사용하므로 invoke 를 이용해 호출 하거나
/// UI 쓰레드내에서 실행 하시기 바랍니다.
/// </summary>
public void showMessage()
{
//개체가 없어졌다면 새로생성해서 사용한다
if (msgwin == null || msgwin.Disposing || msgwin.IsDisposed)
{
msgwin = new fMsgWindow("");
msgwin.VisibleChanged += msgwin_VisibleChanged;
}
//등록된 메세지 버퍼의 내용을 화면에 표시한다.
msgwin.TopMost = true;
// msgwin.Disposed += (s1, e1) => { CloseMsg(item.Key); };
msgwin.Width = this.msgBuffer.WindowSize.Width;
msgwin.Height = msgBuffer.WindowSize.Height;
msgwin.BackColor = Color.FromArgb(200, 200, 200);
msgwin.StartPosition = FormStartPosition.CenterScreen;
msgwin.setMessage(msgBuffer.Message);
//set font
if (msgBuffer.FontTitle != null) msgwin.lbTitle.Font = msgBuffer.FontTitle;
if (msgBuffer.FontContent != null)
{
msgwin.lb1.Font = msgBuffer.FontContent;
msgwin.lb2.Font = msgBuffer.FontContent;
msgwin.lb3.Font = msgBuffer.FontContent;
msgwin.lb4.Font = msgBuffer.FontContent;
msgwin.lb5.Font = msgBuffer.FontContent;
msgwin.lb6.Font = msgBuffer.FontContent;
msgwin.lb7.Font = msgBuffer.FontContent;
}
switch (msgBuffer.WindowType)
{
case eWindowType.attention:
msgwin.lbTitle.BackColor = Color.Gold;
msgwin.lbTitle.BackColor2 = Color.Khaki;
msgwin.lbTitle.ShadowColor = Color.FromArgb(150, 150, 150);
msgwin.lbTitle.ForeColor = Color.FromArgb(50, 50, 50);
break;
case eWindowType.error:
msgwin.lbTitle.BackColor = Color.Tomato;
msgwin.lbTitle.BackColor2 = Color.Red;
msgwin.lbTitle.ShadowColor = Color.FromArgb(50, 50, 50);
msgwin.lbTitle.ForeColor = Color.WhiteSmoke;
break;
default:
msgwin.lbTitle.BackColor = Color.DarkTurquoise;
msgwin.lbTitle.BackColor2 = Color.LightSkyBlue;
msgwin.lbTitle.ShadowColor = Color.FromArgb(50, 50, 50);
msgwin.lbTitle.ForeColor = Color.WhiteSmoke;
break;
}
if (!msgBuffer.EnableClose) msgwin.EnableUserClose = false;
if (msgwin.Visible == false) msgwin.Show();
else
{
msgwin.Visible = true;
msgwin.Activate();
}
needShow = false;
needClose = false; //닫히게되어잇다면 그것을 off해줘야 다시 닫히지 않음 200923
}
/// <summary>
/// sende는 CMessageData
/// </summary>
public event EventHandler WindowClose;
/// <summary>
/// sender는 CMessageData
/// </summary>
public event EventHandler WindowOpen;
void msgwin_VisibleChanged(object sender, EventArgs e)
{
var f = sender as Form;
if (f.Visible == false)
{
if (WindowClose != null) WindowClose(msgBuffer, new EventArgs());
}
else
{
if (WindowOpen != null) WindowOpen(msgBuffer, new EventArgs());
}
}
public Boolean Visible
{
get
{
if (msgwin == null || msgwin.Disposing || msgwin.IsDisposed) return false;
return msgwin.Visible;
}
set
{
if (msgwin == null || msgwin.Disposing || msgwin.IsDisposed)
{
needShow = false;
needClose = false;
return;
}
if (value == true)
{
if (msgwin.Visible == false)
{
msgwin.Show();
msgwin.Activate();
}
else
{
msgwin.Activate();
}
needShow = false;
}
else
{
msgwin.Visible = false;
needClose = false;
}
}
}
}
}

View File

@@ -0,0 +1,472 @@
namespace Project
{
partial class fMsgWindow
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
this.lb1 = new arCtl.arLabel();
this.arPanel1 = new arCtl.arPanel();
this.lb7 = new arCtl.arLabel();
this.lb6 = new arCtl.arLabel();
this.lb5 = new arCtl.arLabel();
this.lb4 = new arCtl.arLabel();
this.lb3 = new arCtl.arLabel();
this.lb2 = new arCtl.arLabel();
this.lbTitle = new arCtl.arLabel();
this.tmBlink = new System.Windows.Forms.Timer(this.components);
this.arPanel1.SuspendLayout();
this.SuspendLayout();
//
// lb1
//
this.lb1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb1.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb1.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb1.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb1.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb1.BorderSize = new System.Windows.Forms.Padding(1);
this.lb1.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb1.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb1.Font = new System.Drawing.Font("맑은 고딕", 20F, System.Drawing.FontStyle.Bold);
this.lb1.ForeColor = System.Drawing.Color.White;
this.lb1.GradientEnable = true;
this.lb1.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb1.GradientRepeatBG = false;
this.lb1.isButton = false;
this.lb1.Location = new System.Drawing.Point(8, 85);
this.lb1.MouseDownColor = System.Drawing.Color.Yellow;
this.lb1.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb1.msg = null;
this.lb1.Name = "lb1";
this.lb1.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb1.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb1.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb1.ProgressEnable = false;
this.lb1.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb1.ProgressForeColor = System.Drawing.Color.Black;
this.lb1.ProgressMax = 100F;
this.lb1.ProgressMin = 0F;
this.lb1.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb1.ProgressValue = 0F;
this.lb1.ShadowColor = System.Drawing.Color.Black;
this.lb1.Sign = "";
this.lb1.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb1.SignColor = System.Drawing.Color.Yellow;
this.lb1.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb1.Size = new System.Drawing.Size(874, 50);
this.lb1.TabIndex = 2;
this.lb1.Text = "*";
this.lb1.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb1.TextShadow = true;
this.lb1.TextVisible = true;
//
// arPanel1
//
this.arPanel1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.arPanel1.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.arPanel1.BorderColor = System.Drawing.Color.DimGray;
this.arPanel1.BorderSize = new System.Windows.Forms.Padding(1);
this.arPanel1.Controls.Add(this.lb7);
this.arPanel1.Controls.Add(this.lb6);
this.arPanel1.Controls.Add(this.lb5);
this.arPanel1.Controls.Add(this.lb4);
this.arPanel1.Controls.Add(this.lb3);
this.arPanel1.Controls.Add(this.lb2);
this.arPanel1.Controls.Add(this.lbTitle);
this.arPanel1.Controls.Add(this.lb1);
this.arPanel1.Dock = System.Windows.Forms.DockStyle.Fill;
this.arPanel1.Font = new System.Drawing.Font("Consolas", 10F, System.Drawing.FontStyle.Italic);
this.arPanel1.ForeColor = System.Drawing.Color.Khaki;
this.arPanel1.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.arPanel1.GradientRepeatBG = false;
this.arPanel1.Location = new System.Drawing.Point(1, 1);
this.arPanel1.Name = "arPanel1";
this.arPanel1.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.arPanel1.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.arPanel1.ProgressMax = 100F;
this.arPanel1.ProgressMin = 0F;
this.arPanel1.ProgressPadding = new System.Windows.Forms.Padding(0);
this.arPanel1.ProgressValue = 0F;
this.arPanel1.ShadowColor = System.Drawing.Color.Black;
this.arPanel1.ShowBorder = true;
this.arPanel1.Size = new System.Drawing.Size(892, 488);
this.arPanel1.TabIndex = 4;
this.arPanel1.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
this.arPanel1.TextShadow = false;
this.arPanel1.UseProgressBar = false;
//
// lb7
//
this.lb7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb7.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb7.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb7.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb7.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb7.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb7.BorderSize = new System.Windows.Forms.Padding(1);
this.lb7.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb7.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb7.Font = new System.Drawing.Font("맑은 고딕", 20F, System.Drawing.FontStyle.Bold);
this.lb7.ForeColor = System.Drawing.Color.White;
this.lb7.GradientEnable = true;
this.lb7.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb7.GradientRepeatBG = false;
this.lb7.isButton = false;
this.lb7.Location = new System.Drawing.Point(8, 427);
this.lb7.MouseDownColor = System.Drawing.Color.Yellow;
this.lb7.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb7.msg = null;
this.lb7.Name = "lb7";
this.lb7.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb7.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb7.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb7.ProgressEnable = false;
this.lb7.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb7.ProgressForeColor = System.Drawing.Color.Black;
this.lb7.ProgressMax = 100F;
this.lb7.ProgressMin = 0F;
this.lb7.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb7.ProgressValue = 0F;
this.lb7.ShadowColor = System.Drawing.Color.Black;
this.lb7.Sign = "";
this.lb7.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb7.SignColor = System.Drawing.Color.Yellow;
this.lb7.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb7.Size = new System.Drawing.Size(874, 50);
this.lb7.TabIndex = 9;
this.lb7.Text = "*";
this.lb7.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb7.TextShadow = true;
this.lb7.TextVisible = true;
//
// lb6
//
this.lb6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb6.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb6.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb6.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb6.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb6.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb6.BorderSize = new System.Windows.Forms.Padding(1);
this.lb6.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb6.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb6.Font = new System.Drawing.Font("맑은 고딕", 20F, System.Drawing.FontStyle.Bold);
this.lb6.ForeColor = System.Drawing.Color.White;
this.lb6.GradientEnable = true;
this.lb6.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb6.GradientRepeatBG = false;
this.lb6.isButton = false;
this.lb6.Location = new System.Drawing.Point(8, 370);
this.lb6.MouseDownColor = System.Drawing.Color.Yellow;
this.lb6.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb6.msg = null;
this.lb6.Name = "lb6";
this.lb6.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb6.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb6.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb6.ProgressEnable = false;
this.lb6.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb6.ProgressForeColor = System.Drawing.Color.Black;
this.lb6.ProgressMax = 100F;
this.lb6.ProgressMin = 0F;
this.lb6.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb6.ProgressValue = 0F;
this.lb6.ShadowColor = System.Drawing.Color.Black;
this.lb6.Sign = "";
this.lb6.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb6.SignColor = System.Drawing.Color.Yellow;
this.lb6.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb6.Size = new System.Drawing.Size(874, 50);
this.lb6.TabIndex = 8;
this.lb6.Text = "*";
this.lb6.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb6.TextShadow = true;
this.lb6.TextVisible = true;
//
// lb5
//
this.lb5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb5.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb5.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb5.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb5.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb5.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb5.BorderSize = new System.Windows.Forms.Padding(1);
this.lb5.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb5.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb5.Font = new System.Drawing.Font("맑은 고딕", 20F, System.Drawing.FontStyle.Bold);
this.lb5.ForeColor = System.Drawing.Color.White;
this.lb5.GradientEnable = true;
this.lb5.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb5.GradientRepeatBG = false;
this.lb5.isButton = false;
this.lb5.Location = new System.Drawing.Point(8, 313);
this.lb5.MouseDownColor = System.Drawing.Color.Yellow;
this.lb5.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb5.msg = null;
this.lb5.Name = "lb5";
this.lb5.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb5.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb5.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb5.ProgressEnable = false;
this.lb5.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb5.ProgressForeColor = System.Drawing.Color.Black;
this.lb5.ProgressMax = 100F;
this.lb5.ProgressMin = 0F;
this.lb5.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb5.ProgressValue = 0F;
this.lb5.ShadowColor = System.Drawing.Color.Black;
this.lb5.Sign = "";
this.lb5.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb5.SignColor = System.Drawing.Color.Yellow;
this.lb5.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb5.Size = new System.Drawing.Size(874, 50);
this.lb5.TabIndex = 7;
this.lb5.Text = "*";
this.lb5.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb5.TextShadow = true;
this.lb5.TextVisible = true;
//
// lb4
//
this.lb4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb4.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb4.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb4.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb4.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb4.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb4.BorderSize = new System.Windows.Forms.Padding(1);
this.lb4.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb4.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb4.Font = new System.Drawing.Font("맑은 고딕", 20F, System.Drawing.FontStyle.Bold);
this.lb4.ForeColor = System.Drawing.Color.White;
this.lb4.GradientEnable = true;
this.lb4.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb4.GradientRepeatBG = false;
this.lb4.isButton = false;
this.lb4.Location = new System.Drawing.Point(8, 256);
this.lb4.MouseDownColor = System.Drawing.Color.Yellow;
this.lb4.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb4.msg = null;
this.lb4.Name = "lb4";
this.lb4.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb4.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb4.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb4.ProgressEnable = false;
this.lb4.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb4.ProgressForeColor = System.Drawing.Color.Black;
this.lb4.ProgressMax = 100F;
this.lb4.ProgressMin = 0F;
this.lb4.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb4.ProgressValue = 0F;
this.lb4.ShadowColor = System.Drawing.Color.Black;
this.lb4.Sign = "";
this.lb4.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb4.SignColor = System.Drawing.Color.Yellow;
this.lb4.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb4.Size = new System.Drawing.Size(874, 50);
this.lb4.TabIndex = 6;
this.lb4.Text = "*";
this.lb4.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb4.TextShadow = true;
this.lb4.TextVisible = true;
//
// lb3
//
this.lb3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb3.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb3.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb3.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb3.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb3.BorderSize = new System.Windows.Forms.Padding(1);
this.lb3.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb3.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb3.Font = new System.Drawing.Font("맑은 고딕", 20F, System.Drawing.FontStyle.Bold);
this.lb3.ForeColor = System.Drawing.Color.White;
this.lb3.GradientEnable = true;
this.lb3.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb3.GradientRepeatBG = false;
this.lb3.isButton = false;
this.lb3.Location = new System.Drawing.Point(8, 199);
this.lb3.MouseDownColor = System.Drawing.Color.Yellow;
this.lb3.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb3.msg = null;
this.lb3.Name = "lb3";
this.lb3.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb3.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb3.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb3.ProgressEnable = false;
this.lb3.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb3.ProgressForeColor = System.Drawing.Color.Black;
this.lb3.ProgressMax = 100F;
this.lb3.ProgressMin = 0F;
this.lb3.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb3.ProgressValue = 0F;
this.lb3.ShadowColor = System.Drawing.Color.Black;
this.lb3.Sign = "";
this.lb3.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb3.SignColor = System.Drawing.Color.Yellow;
this.lb3.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb3.Size = new System.Drawing.Size(874, 50);
this.lb3.TabIndex = 5;
this.lb3.Text = "*";
this.lb3.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb3.TextShadow = true;
this.lb3.TextVisible = true;
//
// lb2
//
this.lb2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb2.BackColor2 = System.Drawing.Color.FromArgb(((int)(((byte)(40)))), ((int)(((byte)(40)))), ((int)(((byte)(40)))));
this.lb2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lb2.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lb2.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb2.BorderColorOver = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lb2.BorderSize = new System.Windows.Forms.Padding(1);
this.lb2.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lb2.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lb2.Font = new System.Drawing.Font("맑은 고딕", 20F, System.Drawing.FontStyle.Bold);
this.lb2.ForeColor = System.Drawing.Color.White;
this.lb2.GradientEnable = true;
this.lb2.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.lb2.GradientRepeatBG = false;
this.lb2.isButton = false;
this.lb2.Location = new System.Drawing.Point(8, 142);
this.lb2.MouseDownColor = System.Drawing.Color.Yellow;
this.lb2.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lb2.msg = null;
this.lb2.Name = "lb2";
this.lb2.Padding = new System.Windows.Forms.Padding(10, 0, 0, 0);
this.lb2.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lb2.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lb2.ProgressEnable = false;
this.lb2.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lb2.ProgressForeColor = System.Drawing.Color.Black;
this.lb2.ProgressMax = 100F;
this.lb2.ProgressMin = 0F;
this.lb2.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lb2.ProgressValue = 0F;
this.lb2.ShadowColor = System.Drawing.Color.Black;
this.lb2.Sign = "";
this.lb2.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lb2.SignColor = System.Drawing.Color.Yellow;
this.lb2.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lb2.Size = new System.Drawing.Size(874, 50);
this.lb2.TabIndex = 4;
this.lb2.Text = "*";
this.lb2.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.lb2.TextShadow = true;
this.lb2.TextVisible = true;
//
// lbTitle
//
this.lbTitle.BackColor = System.Drawing.Color.Red;
this.lbTitle.BackColor2 = System.Drawing.Color.Red;
this.lbTitle.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Stretch;
this.lbTitle.BackgroundImagePadding = new System.Windows.Forms.Padding(0);
this.lbTitle.BorderColor = System.Drawing.Color.FromArgb(((int)(((byte)(90)))), ((int)(((byte)(90)))), ((int)(((byte)(90)))));
this.lbTitle.BorderColorOver = System.Drawing.Color.Gray;
this.lbTitle.BorderSize = new System.Windows.Forms.Padding(1);
this.lbTitle.ColorTheme = arCtl.arLabel.eColorTheme.Custom;
this.lbTitle.Cursor = System.Windows.Forms.Cursors.Arrow;
this.lbTitle.Font = new System.Drawing.Font("맑은 고딕", 30F, System.Drawing.FontStyle.Bold);
this.lbTitle.ForeColor = System.Drawing.Color.WhiteSmoke;
this.lbTitle.GradientEnable = true;
this.lbTitle.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.ForwardDiagonal;
this.lbTitle.GradientRepeatBG = false;
this.lbTitle.isButton = false;
this.lbTitle.Location = new System.Drawing.Point(8, 9);
this.lbTitle.MouseDownColor = System.Drawing.Color.Yellow;
this.lbTitle.MouseOverColor = System.Drawing.Color.FromArgb(((int)(((byte)(64)))), ((int)(((byte)(64)))), ((int)(((byte)(64)))));
this.lbTitle.msg = null;
this.lbTitle.Name = "lbTitle";
this.lbTitle.ProgressColor1 = System.Drawing.Color.LightSkyBlue;
this.lbTitle.ProgressColor2 = System.Drawing.Color.DeepSkyBlue;
this.lbTitle.ProgressEnable = false;
this.lbTitle.ProgressFont = new System.Drawing.Font("Consolas", 10F);
this.lbTitle.ProgressForeColor = System.Drawing.Color.Black;
this.lbTitle.ProgressMax = 100F;
this.lbTitle.ProgressMin = 0F;
this.lbTitle.ProgressPadding = new System.Windows.Forms.Padding(0);
this.lbTitle.ProgressValue = 0F;
this.lbTitle.ShadowColor = System.Drawing.Color.FromArgb(((int)(((byte)(50)))), ((int)(((byte)(50)))), ((int)(((byte)(50)))));
this.lbTitle.Sign = "";
this.lbTitle.SignAlign = System.Drawing.ContentAlignment.BottomRight;
this.lbTitle.SignColor = System.Drawing.Color.Yellow;
this.lbTitle.SignFont = new System.Drawing.Font("Consolas", 7F, System.Drawing.FontStyle.Italic);
this.lbTitle.Size = new System.Drawing.Size(874, 67);
this.lbTitle.TabIndex = 3;
this.lbTitle.Text = "TITLE";
this.lbTitle.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
this.lbTitle.TextShadow = true;
this.lbTitle.TextVisible = true;
this.lbTitle.Click += new System.EventHandler(this.lbTitle_Click);
//
// tmBlink
//
this.tmBlink.Enabled = true;
this.tmBlink.Interval = 300;
this.tmBlink.Tick += new System.EventHandler(this.tmBlink_Tick);
//
// fMsgWindow
//
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.None;
this.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(200)))), ((int)(((byte)(200)))), ((int)(((byte)(200)))));
this.ClientSize = new System.Drawing.Size(894, 490);
this.Controls.Add(this.arPanel1);
this.Font = new System.Drawing.Font("Consolas", 21.75F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
this.KeyPreview = true;
this.MaximizeBox = false;
this.Name = "fMsgWindow";
this.Padding = new System.Windows.Forms.Padding(1);
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;
this.Text = "Message Window";
this.TopMost = true;
this.Load += new System.EventHandler(this.fMsg_Load);
this.arPanel1.ResumeLayout(false);
this.ResumeLayout(false);
}
#endregion
public arCtl.arLabel lb1;
private arCtl.arPanel arPanel1;
public arCtl.arLabel lbTitle;
public arCtl.arLabel lb7;
public arCtl.arLabel lb6;
public arCtl.arLabel lb5;
public arCtl.arLabel lb4;
public arCtl.arLabel lb3;
public arCtl.arLabel lb2;
private System.Windows.Forms.Timer tmBlink;
}
}

View File

@@ -0,0 +1,190 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Project
{
public partial class fMsgWindow : Form
{
private Boolean fMove = false;
private Point MDownPos;
private string _msg = string.Empty;
public Boolean DialogMode = false;
/// <summary>
/// 사용자가 이 창을 닫을수 있는가?
/// </summary>
public Boolean EnableUserClose
{
get { return _enableuserclose; }
set
{
_enableuserclose = value;
// if (!EnableUserClose) btClose.Visible = false;
}
}
private Boolean _enableuserclose = true;
public void setMessage(string msg)
{
//msg를 분리해서 표시를 한다.
var lbs = new arCtl.arLabel[] { lbTitle, lb1, lb2, lb3, lb4, lb5, lb6, lb7 };
var lineBuf = msg.Replace("\r", "").Split('\n');
int maxLine = Math.Min(lbs.Length, lineBuf.Length);
for (int i = 0; i < lbs.Length; i++) //최대줄을 넘어가는건 표시불가
{
if (i >= lineBuf.Length)
{
lbs[i].Text = string.Empty;
}
else
{
if (i > 0) lbs[i].Text = string.Format("{1}", i, lineBuf[i]);
else lbs[i].Text = lineBuf[i];
}
}
}
//Dialog.fBlurPanel fb;
public fMsgWindow(string msg, string filename = "")
{
EnableUserClose = true;
InitializeComponent();
if (System.Diagnostics.Debugger.IsAttached == false)
{
//fb = new Dialog.fBlurPanel();
//fb.Show();
}
this.FormClosing += fMsgWindow_FormClosing;
this.KeyDown += (s1, e1) => { if (EnableUserClose && e1.KeyCode == Keys.Escape) this.Close(); };
this._msg = msg;
if (filename != "")
{
string fullname = AppDomain.CurrentDomain.BaseDirectory + "Image\\" + filename;
if (System.IO.File.Exists(fullname))
{
var img = this.lb1.BackgroundImage;
this.lb1.BackgroundImage = Image.FromFile(fullname);
if (img != null) img.Dispose();
}
else
{
msg += "\nNo Image File\n" + filename;
}
}
else
{
var img = this.lb1.BackgroundImage;
this.lb1.BackgroundImage = null;
if (img != null) img.Dispose();
}
setMessage(msg);
this.lbTitle.MouseMove += label1_MouseMove;
lbTitle.MouseUp += label1_MouseUp;
lbTitle.MouseDown += label1_MouseDown;
lbTitle.MouseDoubleClick += label1_MouseDoubleClick;
this.VisibleChanged += FMsgWindow_VisibleChanged;
//btClose.Click += arLabel1_Click;
}
private void FMsgWindow_VisibleChanged(object sender, EventArgs e)
{
//if (fb != null)
//{
// if (this.Visible) fb.Show();
// else fb.Hide();
//}
}
private void FMsgWindow_Shown(object sender, EventArgs e)
{
}
void fMsgWindow_FormClosing(object sender, FormClosingEventArgs e)
{
//if (fb != null) fb.Dispose();
//if (DialogMode==false)
//{
// e.Cancel = true;
// return;
//}
}
private void fMsg_Load(object sender, EventArgs e)
{
}
private void label1_MouseMove(object sender, MouseEventArgs e)
{
if (fMove)
{
Point offset = new Point(e.X - MDownPos.X, e.Y - MDownPos.Y);
this.Left += offset.X;
this.Top += offset.Y;
offset = new Point(0, 0);
}
}
private void label1_MouseUp(object sender, MouseEventArgs e)
{
fMove = false;
}
private void label1_MouseDown(object sender, MouseEventArgs e)
{
MDownPos = new Point(e.X, e.Y);
fMove = true;
}
private void label1_MouseDoubleClick(object sender, MouseEventArgs e)
{
if (EnableUserClose)
{
if (DialogMode == false)
{
//if (fb != null) fb.Visible = false;
this.Visible = false;
}
else this.Close();
}
}
private void lbTitle_Click(object sender, EventArgs e)
{
if (EnableUserClose)
{
if (DialogMode == false)
{
//if (fb != null) fb.Visible = false;
this.Visible = false;
}
else this.Close();
}
}
private void tmBlink_Tick(object sender, EventArgs e)
{
var bg1 = lbTitle.BackColor;
var bg2 = lbTitle.BackColor2;
lbTitle.BackColor = bg2;
lbTitle.BackColor2 = bg1;
}
}
}

View File

@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="tmBlink.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>

View File

@@ -0,0 +1,233 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Project
{
public partial class StateMachine
{
public DateTime UpdateTime;
private Boolean bLoop = true;
private DateTime StepStartTime;
private byte _messageOption;
private Boolean _isRun;
private System.Threading.Thread worker;
private Boolean firstRun = false;
public Boolean isRun { get { return _isRun; } }
public double Loop_ms { get; set; }
// private IMCResult MCResult = null;
public StateMachine()
{
UpdateTime = DateTime.Now;
_messageOption = 0xFF; //모든메세지가 오도록 한다.
worker = new System.Threading.Thread(new System.Threading.ThreadStart(Loop));
worker.IsBackground = false;
StepStartTime = DateTime.Parse("1982-11-23");
Loop_ms = 0;
}
//public void attachMCResult(IMCResult item)
//{
// MCResult = item;
// if (GetMsgOpt(eMsgOpt.NORMAL))
// RaiseMessage("ATTACH", string.Format("MCResult"));
//}
public void Stop()
{
bLoop = false;
worker.Abort();
}
public void Start()
{
worker.Start();
}
void Loop()
{
_isRun = true;
RaiseMessage("SM", "Start");
while (bLoop)
{
//Console.WriteLine("LOOP-START => 11111111111 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"));
//이전업데이트타임과의 시간차를 기록한다
Loop_ms = (DateTime.Now - UpdateTime).TotalMilliseconds;
UpdateTime = DateTime.Now;
//항상 작동하는 경우
if (SPS != null)
{
//try
//{
SPS(this,new EventArgs());
//}
//catch (Exception ex)
//{
// Console.WriteLine("ERROR:SM:SPS:" + ex.Message);
//}
}
// Console.WriteLine("LOOP-START => 2222222222 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"));
//작동스텝이 변경되었다면 그것을 알림 처리한다.
if (getNewStep != Step)
{
if (GetMsgOpt(eMsgOpt.STEPCHANGE))
RaiseMessage("SM-STEP", string.Format("Step Changed {0} >> {1}", Step, getNewStep));
StepApply();
firstRun = true;
StepStartTime = DateTime.Now;
}
else firstRun = false;
// Console.WriteLine("LOOP-START => 3333333333 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"));
//동작중에 발생하는 이벤트
if (Running != null)
{
//try
//{
Running(this,new RunningEventArgs(Step, firstRun, StepRunTime));
//}
//catch (Exception ex)
//{
// //오류보고는 3초에 한번씩 동작한다
// if(Pub.GetVarRunTime(eVarTime.SMRUNERROR).TotalSeconds > 3)
// {
// Pub.SetVarTime(eVarTime.SMRUNERROR, DateTime.Now);
// Pub.log.AddE("상태머신 RUN 오류:" + ex.Message);
// }
//}
}
System.Threading.Thread.Sleep(1);
// Console.WriteLine("LOOP-END => 4444444444444 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff"));
}
_isRun = false;
if (GetMsgOpt(eMsgOpt.NORMAL)) RaiseMessage("SM", "Stop");
}
eSMStep prebackupstepo = eSMStep.NOTSET;
eSMStep prebackupstepn = eSMStep.NOTSET;
public void PushStep()
{
prebackupstepo = OldStep;
prebackupstepn = _step;
}
public void PopStep()
{
if (prebackupstepn != eSMStep.NOTSET)
{
_step = prebackupstepn;
OldStep = prebackupstepo;
prebackupstepn = eSMStep.NOTSET;
}
}
/// <summary>
/// 상태머신의 작동상태
/// </summary>
public eSMStep Step { get { return _step; } }
/// <summary>
/// 상태머신값을 숫자로 반환 합니다. (20이하는 시스템상태이고 그 이상은 사용자 상태)
/// </summary>
public byte StepValue
{
get
{
return (byte)this._step;
}
}
public void setNewStep(eSMStep newstep_, Boolean force = false)
{
if (Step != newstep_) //현재스텝과 새로운 스텝이 다른경우
{
if (NewStep != newstep_)
{
if (force == false && NewStep == eSMStep.EMERGENCY && newstep_ != eSMStep.RESET)
{
//스텝을 변경해야하는데. 예약된 스텝이 비상정지라면 처리하지 않는다
RaiseMessage("SM-STEP", string.Format("비상정지가 예약되어 있으므로 이 스텝({0})은 취소 됩니다", newstep_));
}
else
{
//바뀌도록 예약을 한다.
NewStep = newstep_;
if (GetMsgOpt(eMsgOpt.STEPCHANGE))
RaiseMessage("SM-STEP", string.Format("Step Reserve {0} -> {1}", Step, NewStep));
}
}
else
{
//예약은 되어있는데 아직 바뀐것은 아니다.
if (GetMsgOpt(eMsgOpt.STEPCHANGE))
RaiseMessage("SM-STEP", string.Format("Step Already Reserve {0} -> {1}", Step, NewStep));
}
}
}
public eSMStep getNewStep
{
get
{
return NewStep;
}
}
private eSMStep NewStep = eSMStep.NOTSET;
public eSMStep OldStep = eSMStep.NOTSET; //171214
private eSMStep _step;
/// <summary>
/// newstep 의 값을 step 에 적용합니다.
/// </summary>
private void StepApply()
{
var ostep = _step;
OldStep = _step; _step = NewStep;
if (StepChanged != null) StepChanged(this, new StepChangeEventArgs(ostep, _step));
} //171214
/// <summary>
/// 메세지 출력옵션을 변경 합니다.
/// </summary>
/// <param name="opt"></param>
/// <param name="value"></param>
public void SetMsgOpt(eMsgOpt opt, Boolean value)
{
byte pos = (byte)opt;
if (value)
_messageOption = (byte)(_messageOption | (1 << pos));
else
_messageOption = (byte)(_messageOption & ~(1 << pos));
}
public void SetMegOptOn() { _messageOption = 0xFF; }
public void SetMsgOptOff() { _messageOption = 0; }
public Boolean GetMsgOpt(eMsgOpt opt)
{
byte pos = (byte)opt;
return (_messageOption & (1 << pos)) > 0;
}
public TimeSpan StepRunTime
{
get
{
if (StepStartTime.Year == 1982) return new TimeSpan(0);
else return DateTime.Now - StepStartTime;
}
}
}
}

View File

@@ -0,0 +1,153 @@
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Linq;
using System.Text;
namespace Project
{
public partial class fMain
{
#region "Common Utility"
/// <summary>
/// 지정한 출력핀의 상태를 변경하고 최대 10초간 상태를 모니터링 합니다.
/// </summary>
/// <param name="doPin"></param>
/// <param name="isFirst"></param>
/// <param name="stepTime"></param>
/// <param name="checkValue"></param>
/// <param name="sendIntervalMs"></param>
/// <param name="timeoutSec"></param>
/// <returns></returns>
bool checkDigitalO(int shutIdx, eDOName doPin, Boolean isFirst, TimeSpan stepTime, Boolean checkValue, int sendIntervalMs = 1000, int timeoutSec = 0)
{
//eIOCheckResult result = eIOCheckResult.Complete;
var retval = false;
if (timeoutSec == 0) timeoutSec = Pub.setting.Timeout_DIOCommand;
if (isFirst)
{
Pub.Result.doCheckTime[shutIdx, (int)doPin] = DateTime.Now.AddDays(-1);
}
//지정한 출력핀이 조건에 맞지 않을 경우ㅍ
var curValue = Util_DO.GetIOOutput(doPin);
if (curValue != checkValue)
{
//Offt신호는 1초에 1번씩 전송하게 한다.
var ts = DateTime.Now - Pub.Result.doCheckTime[shutIdx, (int)doPin];
if (ts.TotalMilliseconds >= sendIntervalMs)
{
Pub.dio.SetOutput((int)doPin, checkValue);
Pub.Result.doCheckTime[shutIdx, (int)doPin] = DateTime.Now;
}
//전체 시간이 10초를 넘어가면 오류로 처리함
if (stepTime.TotalSeconds >= timeoutSec)
Pub.Result.SetResultTimeOutMessage(doPin, checkValue, eNextStep.pause);
}
else retval = true;
return retval;
}
bool checkDigitalO(int shutIdx, eDIName doPin, Boolean isFirst, TimeSpan stepTime, Boolean checkValue, int timeoutSec = 0)
{
//eIOCheckResult result = eIOCheckResult.Complete;
var retval = false;
if (timeoutSec == 0) timeoutSec = (int)Pub.setting.Timeout_DIOCommand;
//지정한 출력핀이 조건에 맞지 않을 경우ㅍ
var curValue = Util_DO.GetIOInput(doPin);
if (curValue != checkValue)
{
//전체 시간이 10초를 넘어가면 오류로 처리함
//var diRunTime = DateTime.Now - Pub.Result.diCheckTime[shutIdx, (int)doPin];
if (stepTime.TotalSeconds >= timeoutSec)
{
//result = eIOCheckResult.Timeout;
Pub.Result.SetResultTimeOutMessage(doPin, checkValue, eNextStep.pause);
}
}
else retval = true;
return retval;
}
Boolean CheckMotionPos(int seqIdx, eAxis Motaxis, TimeSpan stepTime, double pos, double speed, double acc, double dcc, string source, Boolean useInterLocak=true, int timeoutSec = 0)
{
var axis = (int)Motaxis;
//타임아웃 적용 191213
if (timeoutSec == 0) timeoutSec = Pub.setting.Timeout_MotionCommand;
//X축을 그립위치까지 이동함
if (Pub.mot.isINP[axis] && Pub.mot.isMotion[axis] == false)
{
var offset = Math.Abs(Pub.mot.dCMDPOS[axis] - pos);
var offsetReal = Math.Abs(Pub.mot.dCMDPOS[axis] - Pub.mot.dACTPOS[axis]);
if (offset > 0.01 || offsetReal > 0.1)
{
if (Util_Mot.Move(Motaxis, pos, speed, acc, false, true, useInterLocak) == false)
Console.WriteLine("move error {0},pos={1} => {2}",Motaxis,pos,Pub.mot.errorMessage);
//모션을 옴겨야하는 상황인데 최대시간을 초과했다면 오류로 처리한다
if (timeoutSec != -1 && stepTime.TotalSeconds >= timeoutSec)
{
Pub.Result.SetResultTimeOutMessage(Motaxis, eECode.MOT_CMD, eNextStep.pause, source);
}
//모션을 이동시켰으니 False 처리한다
//return false;
}
}
//축이 이동중이면 처리하지 않는다.
if (Pub.mot.isINP[axis] == false || Pub.mot.isMotion[axis] == true)
{
return false;
}
//X축실위치값 확인
if (Util_Mot.getPositionMatch(axis, pos) == false)
{
return false;
}
return true;
}
/// <summary>
/// 지정된 시간만큼 대기하며 완료되면 true를 반환합니다.
/// </summary>
/// <param name="time"></param>
/// <returns></returns>
Boolean WaitForSeconds(eWaitType wait, double timems)
{
var idx = (byte)wait;
if (Pub.Result.WaitForVar[idx] == null || Pub.Result.WaitForVar[idx].Year == 1982)
{
Pub.Result.WaitForVar[idx] = Pub.Result.WaitForVar[idx] = DateTime.Now;
//Pub.log.Add(string.Format("Wait for [{0}], Wait Time:{1}ms", wait, timems));
}
var ts = DateTime.Now - Pub.Result.WaitForVar[idx];
if (ts.TotalSeconds >= timems) return true;
else return false;
}
void ResetWaitForSeconds(eWaitType wait)
{
var idx = (byte)wait;
Pub.Result.WaitForVar[idx] = DateTime.Parse("1982-11-23");
}
#endregion
}//cvass
}

View File

@@ -0,0 +1,13 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Project
{
public static partial class Util_DO
{
}
}

View File

@@ -0,0 +1,249 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Project
{
public static partial class Util_Mot
{
#region "Common Util"
//지정한 옵셋범위에 들어있는지 체크합니다.
static Boolean MatchPosition(double cpos, double tpos, double diff = 0.1)
{
var offset = Math.Abs(tpos - cpos);
return offset <= diff;
}
public static double getPositionOffset(eAxis axis, double cmdPos)
{
return getPositionOffset((int)axis, cmdPos);
}
public static double getPositionOffset(eAxisPXPos point)
{
var axis = eAxis.X_PICKER;
var pos = GetAxPXPos(point);
return getPositionOffset(axis, pos.position);
}
public static double getPositionOffset(eAxisPZPos point)
{
var axis = eAxis.Z_PICKER;
var pos = GetAxPZPos(point);
return getPositionOffset(axis, pos.position);
}
public static double getPositionOffset(eAxisPLMovePos point)
{
var axis = eAxis.PL_MOVE;
var pos = GetAxPLMPos(point);
return getPositionOffset(axis, pos.position);
}
public static double getPositionOffset(eAxisPRMovePos point)
{
var axis = eAxis.PR_MOVE;
var pos = GetAxPRMPos(point);
return getPositionOffset(axis, pos.position);
}
public static double getPositionOffset(eAxisPLUPDNPos point)
{
var axis = eAxis.PL_UPDN;
var pos = GetAxPLZPos(point);
return getPositionOffset(axis, pos.position);
}
public static double getPositionOffset(eAxisPRUPDNPos point)
{
var axis = eAxis.PR_UPDN;
var pos = GetAxPRZPos(point);
return getPositionOffset(axis, pos.position);
}
/// <summary>
/// 현재위치에서 지정된 위치를 뺀 값입니다. +가 반환되면 현재 위치가 지정위치보다 멀리 있다는 뜻입니다.
/// </summary>
/// <param name="axis"></param>
/// <param name="cmdPos"></param>
/// <returns></returns>
public static double getPositionOffset(int axis, double cmdPos)
{
var coffset = (Pub.mot.dACTPOS[(int)axis] - cmdPos);
return coffset;// return coffset < offset;
}
public static bool getPositionMatch(eAxis axis, double cmdPos, double offset = 0.1)
{
return getPositionMatch((int)axis, cmdPos, offset);
}
public static bool getPositionMatch(int axis, double cmdPos, double offset = 0.1)
{
var coffset = Math.Abs(Pub.mot.dACTPOS[(int)axis] - cmdPos);
return coffset < offset;
}
public static List<string> GetActiveLockList(eAxis axis, CInterLock Lck)
{
var locklist = new List<string>();
if (Lck.Value > 0)
{
for (int i = 0; i < 64; i++)
{
if (Lck.get(i))
{
var vStr = $"[{i}]";
if (axis == eAxis.X_PICKER) vStr = ((eILockPKX)i).ToString();
else if (axis == eAxis.Z_PICKER) vStr = ((eILockPKZ)i).ToString();
else if (axis == eAxis.Z_THETA) vStr = ((eILockPKT)i).ToString();
else if (axis == eAxis.PL_MOVE) vStr = ((eILockPRM)i).ToString();
else if (axis == eAxis.PL_UPDN) vStr = ((eILockPRZ)i).ToString();
else if (axis == eAxis.PR_MOVE) vStr = ((eILockPRM)i).ToString();
else if (axis == eAxis.PR_UPDN) vStr = ((eILockPRZ)i).ToString();
locklist.Add(vStr);
}
}
}
return locklist;
}
public static Boolean Home(string reason, eAxis axis_, Boolean useValidcheck = true)
{
string Message;
int axis = (int)axis_;
if (useValidcheck == true && !Home_Validation(axis_, out Message))
{
Pub.mot.RaiseMessage(string.Format("[{0}-Axis] Move Error : {1}", axis, Message), true);
return false;
}
var HomespdH = new double[] {
Pub.system.HSpeed0H, Pub.system.HSpeed1H, Pub.system.HSpeed2H,
Pub.system.HSpeed3H, Pub.system.HSpeed4H, Pub.system.HSpeed5H,
Pub.system.HSpeed6H,Pub.system.HSpeed7H
};
var HomespdL = new double[] {
Pub.system.HSpeed0L, Pub.system.HSpeed1L, Pub.system.HSpeed2L,
Pub.system.HSpeed3L, Pub.system.HSpeed4L, Pub.system.HSpeed5L,
Pub.system.HSpeed6L, Pub.system.HSpeed7L
};
var homespdA = new double[] {
Pub.system.HAcc0, Pub.system.HAcc1, Pub.system.HAcc2,
Pub.system.HAcc3, Pub.system.HAcc4, Pub.system.HAcc5,
Pub.system.HAcc6,Pub.system.HAcc7
};
var disable_org = new Boolean[] {
Pub.system.axis0_disable_orgsensor, Pub.system.axis1_disable_orgsensor,Pub.system.axis2_disable_orgsensor,
Pub.system.axis3_disable_orgsensor, Pub.system.axis4_disable_orgsensor,Pub.system.axis5_disable_orgsensor,
Pub.system.axis6_disable_orgsensor,Pub.system.axis7_disable_orgsensor
};
//Pub.mot.Home(1, arDev.AzinAxt.eMotionDirection.Negative, arDev.AzinAxt.eSoftLimitStopMode.SStop, Pub.setting.HZSpeed, Pub.setting.HZAcc);
Boolean useOrgSensor = !disable_org[axis]; // (axis_ != eAxis.Marking); //A센서는 ORG가 없으므로 NE센서만으로 처리해야 함
return Pub.mot.Home(reason, (short)axis, arDev.AzinAxt.eMotionDirection.Negative,
arDev.AzinAxt.eSoftLimitStopMode.EStop,
HomespdH[axis],
HomespdL[axis],
homespdA[axis],
useOrgSensor);
}
private static DateTime[] MotCmdtime = new DateTime[] { DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now, DateTime.Now };
private static double[] MotCmdPos = new double[] { 0, 0, 0, 0, 0, 0, 0, 0 };
public static Boolean Move(eAxis axis, double pos_mm, double speed, double acc = 1000, Boolean relative = false, Boolean validchk = true, Boolean UserInterLock = true)
{
//너무빠른시간 동작하지 못하게 한다
if (MotCmdPos[(int)axis] == pos_mm)
{
var ts = DateTime.Now - MotCmdtime[(int)axis];
if (ts.TotalMilliseconds < 1000)
{
//너무 빠르게 재시도하지 않게 한다 210115
Console.WriteLine("mot command skip : " + axis.ToString() + "pos:" + pos_mm.ToString() + " too short");
MotCmdtime[(int)axis] = DateTime.Now.AddMilliseconds(-1500);
return true;
}
else
{
MotCmdtime[(int)axis] = DateTime.Now;
MotCmdPos[(int)axis] = pos_mm;
}
}
else
{
MotCmdtime[(int)axis] = DateTime.Now;
MotCmdPos[(int)axis] = pos_mm;
}
//웨이퍼가 감지되는 상태일때 OPEN 되어있다면 이동하지 못하게 한다
string Message;
if (validchk == true)
{
if (!Move_Validation(axis, out Message))
{
Pub.log.AddE(string.Format("[{0}-Axis] Move Error : {1}", axis, Message));
//Pub.mot.RaiseMessage(, true);
return false;
}
}
//해당 축 ILOCK체크
if (UserInterLock)
{
//lock이 걸린경우 lock 걸린 항목을 모두 확인하면 좋다
if (axis == eAxis.X_PICKER && Pub.LockPKX.Value > 0)
{
var locklist = Util_Mot.GetActiveLockList(axis, Pub.LockPKX);
Pub.mot.errorMessage = "X_PICKER Interlock(" + string.Join(",", locklist) + ")";
return false;
}
else if (axis == eAxis.Z_PICKER && Pub.LockPKZ.Value > 0)
{
var locklist = Util_Mot.GetActiveLockList(axis, Pub.LockPKZ);
Pub.mot.errorMessage = "Z_PICKER Interlock(" + string.Join(",", locklist) + ")";
return false;
}
else if (axis == eAxis.Z_THETA && Pub.LockPKT.Value > 0)
{
var locklist = Util_Mot.GetActiveLockList(axis, Pub.LockPKT);
Pub.mot.errorMessage = "Z_THETA Interlock(" + string.Join(",", locklist) + ")";
return false;
}
else if (axis == eAxis.PL_MOVE && Pub.LockPLM.Value > 0)
{
var locklist = Util_Mot.GetActiveLockList(axis, Pub.LockPLM);
Pub.mot.errorMessage = "PL_MOVE Interlock(" + string.Join(",", locklist) + ")";
return false;
}
else if (axis == eAxis.PL_UPDN && Pub.LockPLZ.Value > 0)
{
var locklist = Util_Mot.GetActiveLockList(axis, Pub.LockPLZ);
Pub.mot.errorMessage = "PL_UPDN Interlock(" + string.Join(",", locklist) + ")";
return false;
}
else if (axis == eAxis.PR_MOVE && Pub.LockPRM.Value > 0)
{
var locklist = Util_Mot.GetActiveLockList(axis, Pub.LockPRM);
Pub.mot.errorMessage = "PR_MOVE Interlock(" + string.Join(",", locklist) + ")";
return false;
}
else if (axis == eAxis.PR_UPDN && Pub.LockPRZ.Value > 0)
{
var locklist = Util_Mot.GetActiveLockList(axis, Pub.LockPRZ);
Pub.mot.errorMessage = "PR_UPDN Interlock(" + string.Join(",", locklist) + ")";
return false;
}
}
var pos_pulse = pos_mm;// *10;
var result = Pub.mot.Move((short)axis, pos_pulse, speed, acc, acc, relative, false, validchk);
if (!result) Pub.mot.RaiseMessage("Move(X) Error : " + Pub.mot.errorMessage, true);
return result;
}
#endregion
}
}