initial commit
This commit is contained in:
85
Cs_HMI/Project/Dialog/fTouchNumDot.cs
Normal file
85
Cs_HMI/Project/Dialog/fTouchNumDot.cs
Normal 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());
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user