none
如何在KeyUp事件中判断是否输入了某字符? RRS feed

  • 问题

  • 有一个char数组,记录了一些字符。当在KeyUp事件中,发现用户输入了此字符,就Debug报告一下。请问怎么做?

    例如,char[] myChars=new[]{'/','*'}
    2011年6月22日 9:47

答案

  • 有一个char数组,记录了一些字符。当在KeyUp事件中,发现用户输入了此字符,就Debug报告一下。请问怎么做?

    例如,char[] myChars=new[]{'/','*'}

    你好:)

    KeyUp一般判断一些正规的字符。对于特殊字符而言,我建议你用KeyPress事件为宜。

    比如:

    namespace WindowsFormsApplications
    {
    public partial class Form1 : Form
    {
    List<char> chars = new List<char> { '/','*'}; //动态存储查询字符序列

    public Form1()
    {
    InitializeComponent();
    }

    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (chars.IndexOf(e.KeyChar) >= 0)
    {
    MessageBox.Show("发现列表中的字符!");
    }
    }
    }
    }


    如果你有其它意见或私下交流,请发送邮件到:maledong@qq.com;或者请讨论
    下载MSDN桌面工具(Vista,Win7)
    下载Technet桌面小工具(Vista,Win7)
    慈善点击,点击此处
    • 已建议为答案 Cookie Luo 2011年6月24日 4:35
    • 已标记为答案 Cookie Luo 2011年6月29日 14:06
    2011年6月23日 2:48
    版主

全部回复

  • 循环判断e.KeyCode


    http://feiyun0112.cnblogs.com/
    2011年6月23日 1:20
    版主
  • 你好:)

    KeyUp一般判断一些正规的字符。对于特殊字符而言,我建议你用KeyPress事件为宜。

    比如:

    namespace WindowsFormsApplications
    {
        public partial class Form1 : Form
        {
            List<char> chars = new List<char> { '/','*'};  //动态存储查询字符序列

            public Form1()
            {
                InitializeComponent();
            }

            private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
            {
                if (chars.IndexOf(e.KeyChar) >= 0)
                {
                    MessageBox.Show("发现列表中的字符!");
                }
            }
        }
    }

     


    如果你有其它意见或私下交流,请发送邮件到:maledong@qq.com;或者请讨论
    下载MSDN桌面工具(Vista,Win7)
    下载Technet桌面小工具(Vista,Win7)
    慈善点击,点击此处
    2011年6月23日 2:32
    版主
  • 有一个char数组,记录了一些字符。当在KeyUp事件中,发现用户输入了此字符,就Debug报告一下。请问怎么做?

    例如,char[] myChars=new[]{'/','*'}

    你好:)

    KeyUp一般判断一些正规的字符。对于特殊字符而言,我建议你用KeyPress事件为宜。

    比如:

    namespace WindowsFormsApplications
    {
    public partial class Form1 : Form
    {
    List<char> chars = new List<char> { '/','*'}; //动态存储查询字符序列

    public Form1()
    {
    InitializeComponent();
    }

    private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
    {
    if (chars.IndexOf(e.KeyChar) >= 0)
    {
    MessageBox.Show("发现列表中的字符!");
    }
    }
    }
    }


    如果你有其它意见或私下交流,请发送邮件到:maledong@qq.com;或者请讨论
    下载MSDN桌面工具(Vista,Win7)
    下载Technet桌面小工具(Vista,Win7)
    慈善点击,点击此处
    • 已建议为答案 Cookie Luo 2011年6月24日 4:35
    • 已标记为答案 Cookie Luo 2011年6月29日 14:06
    2011年6月23日 2:48
    版主