| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2025 人关注过本帖
标题:yu版进来瞧瞧 这个textbox控件的keypress事件 为啥只响应主键盘的事件呢 ...
取消只看楼主 加入收藏
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
结帖率:99.76%
收藏
已结贴  问题点数:20 回复次数:3 
yu版进来瞧瞧 这个textbox控件的keypress事件 为啥只响应主键盘的事件呢,我想让它响应副键盘的建 怎么做 比如 上下左右 四个方向键
程序代码:
private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
        {
            int EM_LINEFROMCHAR = 0xC9;
            int Row = (int)SendMessage(textBox1.Handle, EM_LINEFROMCHAR, -1, 0);
            int j = (int)SendMessage(textBox1.Handle, 0xB0, 0, 0) / 65536;
            int k = (int)SendMessage(textBox1.Handle, 0xBB, -1, 0);
            int m = j - k + 1;
            this.toolStripStatusLabel1.Text = "当前光标:" + Row + "" + " " + m + "";
        }


[ 本帖最后由 wp231957 于 2013-8-15 10:18 编辑 ]
搜索更多相关主题的帖子: 键盘 左右 
2013-08-15 10:17
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
c#   谢谢了  我再看看   

我想做的事情就是模仿记事本  在文本编辑框里  移动鼠标 或键盘移动光标  能再状态栏里显示当前的行 列 值

现在鼠标的能做到了  主键盘输入也能做到了  但是 方向键的移动却是实现不了

DO IT YOURSELF !
2013-08-15 12:53
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
以下是引用yuccn在2013-8-15 12:54:01的发言:

这有一篇文章,看看是否你想找的:
http://www.
     还真是那么回事   以后再研究了  (暂时有点看不懂  呵呵)

DO IT YOURSELF !
2013-08-15 12:58
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:0 
程序代码:
private void textBox1_KeyDown(object sender, KeyEventArgs e)
        {
            int EM_LINEFROMCHAR = 0xC9;
            int Row = (int)SendMessage(textBox1.Handle, EM_LINEFROMCHAR, -1, 0) + 1;
            int j = (int)SendMessage(textBox1.Handle, 0xB0, 0, 0) / 65536;
            int k = (int)SendMessage(textBox1.Handle, 0xBB, -1, 0);
            int m = j - k + 1;
            this.toolStripStatusLabel1.Text = "当前光标:" + Row + "" + " " + m + "";

        }

        private void textBox1_KeyUp(object sender, KeyEventArgs e)
        {
            int EM_LINEFROMCHAR = 0xC9;
            int Row = (int)SendMessage(textBox1.Handle, EM_LINEFROMCHAR, -1, 0) + 1;
            int j = (int)SendMessage(textBox1.Handle, 0xB0, 0, 0) / 65536;
            int k = (int)SendMessage(textBox1.Handle, 0xBB, -1, 0);
            int m = j - k + 1;
            this.toolStripStatusLabel1.Text = "当前光标:" + Row + "" + " " + m + "";

        }
也没啥心得了   把这2个事件都写上  就实现 目标了  可以用方向键移动位置的同时   状态栏的行列位置也跟随改变

DO IT YOURSELF !
2013-08-15 13:11
快速回复:yu版进来瞧瞧 这个textbox控件的keypress事件 为啥只响应主键盘的事 ...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026609 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved