86 lines
2.3 KiB
C#
86 lines
2.3 KiB
C#
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());
|
|
}
|
|
|
|
}
|
|
}
|