日期:2014-05-19  浏览次数:20800 次

winform键盘接受数据的问题
我想做这样的一个winform
接受从磁卡或其他设备传输过来的一串字符串
字符串可能格式没有固定
大概是   $xxxxxxxxxx?   这样的字符串xxxx可能是数字或字符
它是模拟键盘录入的,最后是一个回车
我想捕获这些信息,然后查询数据库,

程序是全屏幕的置顶,另外需要一个功能就是ESC退出程序

最初的时候我是在程序里面用一个textbox来接受数据,
感觉给用户挺难看的
就是一个刷卡或智能卡接受程序,刷卡完毕,读卡器就模拟键盘输入一串字符串,输入完毕就是一个回车,我打开记事本,刷卡的时候也都这样的
对高手来说,应该很简单吧,对我们这些菜菜就5555~~~~
只要解决,分不够可以再开嘛

------解决方案--------------------
思路很清晰,不错
------解决方案--------------------
界面可以不用放置TextBox
你可以放PictureBox找或做张漂亮的背景图
将窗体设置为无边框和标题栏
如果要显示文字可以放一个Label并调整字体配合背景图

private void Form1_Load(object sender, EventArgs e)
{
label1.Text = string.Empty;
}

private string keyText = string.Empty;

private void Form1_KeyPress(object sender, KeyPressEventArgs e)
{
if (e.KeyChar == (char)Keys.Escape)
{
Close();
return;
}
if (e.KeyChar == (char)Keys.Enter)
{
label1.Text = keyText;
keyText = string.Empty;
{ TODO : 查询数据库、并显示 }
return;
}
keyText += e.KeyChar;
}