| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1083 人关注过本帖
标题:新手求教:C#方向键响应和按钮冲突的问题~~刚来分有些少,大家担待下
只看楼主 加入收藏
ap8hbgary
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-10-20
结帖率:50%
收藏
已结贴  问题点数:0 回复次数:2 
新手求教:C#方向键响应和按钮冲突的问题~~刚来分有些少,大家担待下
为什么用键盘输入某一个字母可以完成一个按钮按下的操作
        private void Form1_KeyDown_1(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.A)
                button1_Click(sender, e);
        }
但是用方向键就不好用了,选框就在各个按钮间跳来跳去,不能完成原来的响应了呢??
        private void Form1_KeyDown_1(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.Up)
                button1_Click(sender, e);
        }
就是这样,最后button1的功能不能完成,只有一个小选框在各个按钮上跳来跳去,求解!!
KeyPreview已经设成true!!
------------------------
还有百度搜了下有人来这么一出
protected override bool ProcessDialogKey( Keys keyData)
        {
            switch (keyData)
            {
                case Keys.Left:
                    curBlock.left();
                    break;
                case Keys.Right:
                    curBlock.right();
                    break;
                case Keys.Up:
                    curBlock.rotate();
                    break;
                case Keys.Down:
                    curBlock.down();
                    break;
            }
放在Form1下,我照着打出来~但是死活找不着curBlock是啥,他提示上下文没有这个
再说这个是啥我也看不懂
纠结了两天了,求解啊求解啊
搜索更多相关主题的帖子: 键盘 字母 private 
2011-10-20 17:37
qubo1982
Rank: 9Rank: 9Rank: 9
等 级:蜘蛛侠
威 望:1
帖 子:367
专家分:1132
注 册:2009-3-18
收藏
得分:5 
程序代码:
protected override bool ProcessDialogKey(Keys keyData)
        {
            switch (keyData)
            {
                case Keys.Left:
                    this.OnKeyDown(new KeyEventArgs(keyData));
                    break;
                case Keys.Right:
                    this.OnKeyDown(new KeyEventArgs(keyData));
                    break;
                case Keys.Up:
                    this.OnKeyDown(new KeyEventArgs(keyData));
                    break;
                case Keys.Down:
                    this.OnKeyDown(new KeyEventArgs(keyData));
                    break;
            }
            return true;
        }
这样,你的keyDown事件就可以响应了
2011-10-20 18:39
ap8hbgary
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2011-10-20
收藏
得分:0 
回复 2楼 qubo1982
谢谢你~这些函数都是怎么记住的呀
2011-10-20 21:20
快速回复:新手求教:C#方向键响应和按钮冲突的问题~~刚来分有些少,大家担待下
数据加载中...
 
   



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

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