| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2517 人关注过本帖
标题:请教如何用方向键在文本输入框之间切换焦点?
只看楼主 加入收藏
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:9 
请教如何用方向键在文本输入框之间切换焦点?
小可近日写一个填字游戏,将二维数组的文本输入框控件(EDIT)排成了一个矩阵。现在希望能够实现用方向键来切换当前活动文本框。例如当前输入光标在grid[2][3],我想在按了右箭头之后让grid[3][3]获得输入焦点,如果是按了下键头则让grid[2][4]获得输入焦点。请问应该怎么实现?
我把自己知道的消息试了一圈儿,发现输入框得到焦点之后都触发不了这些消息。在此请教。(win32应用程序,非MFC)
搜索更多相关主题的帖子: 应用程序 文本框 如何 游戏 
2016-01-03 14:01
诸葛欧阳
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:流年
等 级:贵宾
威 望:82
帖 子:2790
专家分:14619
注 册:2014-10-16
收藏
得分:4 
切换焦点应该是有个focus函数貌似

一片落叶掉进了回忆的流年。
2016-01-03 17:08
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:0 
回复 2楼 诸葛欧阳
是有的,叫SetFocus,但不知道在按下方向键时触发什么消息来执行,因为一旦一个文本框获得焦点,主窗体就失去了焦点,也就无法捕捉事件了。
    现在我暂时另采取了一种方案,但就这个问题而言还是没有解决。
2016-01-03 22:39
天使梦魔
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:37
帖 子:564
专家分:2754
注 册:2007-8-29
收藏
得分:4 
窗口消息泵,WM_KEYDOWN消息。
主窗口失去焦点?子窗口怎么注册的,拥有独立的线程句柄?
2016-01-03 23:11
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:8 
假如你的Edit中内容是“a|b”,其中'|'是光标,当你按右方向键时,是想变成“ab|”,还是其它Edit获得焦点?
你先想明白这一点,后可以在PreTranslateMessage中截获发给Edit的键盘消息


[此贴子已经被作者于2016-1-4 13:50编辑过]

2016-01-04 08:32
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:0 
回复 5楼 rjsp
正是要在不同文本框之间切换。请问在PreTranslateMessage中截获给EDIT的消息具体怎么做呢?普及一个。
2016-01-04 12:32
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9024
专家分:54030
注 册:2011-1-18
收藏
得分:0 
回复 6楼 yangfrancis
if( pMsg->message == WM_KEYDOWN )
{
    switch( pMsg->wParam )
    {
    case VK_LEFT:
        ……
        break;
    case ……

2016-01-04 13:49
aiyulunhui
Rank: 2
等 级:论坛游民
帖 子:19
专家分:24
注 册:2015-9-9
收藏
得分:4 
WM_SETFOCUS 和WM_KILLFOCUS,参数可以传递焦点
2016-01-04 17:24
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:0 
回复 7楼 rjsp
这个东西果真好使。学习了。谢谢。
2016-01-04 21:13
yangfrancis
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:贵宾
威 望:141
帖 子:1510
专家分:7661
注 册:2014-5-19
收藏
得分:0 
感谢各位的关注。
2016-01-04 21:13
快速回复:请教如何用方向键在文本输入框之间切换焦点?
数据加载中...
 
   



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

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