作者ric2k1 (Ric)
看板EE_DSnP
标题Re: [问题] make ref
时间Fri Oct 7 23:22:25 2011
我想我知道原因了...
(是我的错 orz)
因为你的 keyboard mapping 不同,所以你的 charDef.h 的定义也跟我不同,
也就是说,
你的 HOME_KEY = 72 + HOME_KEY_FLAG,
而我的 HOME_KEY = 49 + MOD_KEY_FLAG,
在 pre-compile 好的 cmdReader.o-ref,
它是用我的 HOME_KEY 的质来做判断 (line 47),
当你用你的 charDef.h 与 charDef.cpp 跟他一起 link 的时候,
执行的时候它会把你传入的 HOME_KEY 的值 (72 + HOME_KEY_FLAG) 视为 others,
而跳到 default 去执行 insertChar(),
而印出 'H' <== ASCII code = 72 !!!!
这是我设计上的错误,
本来以为大家用我的 cmdReader.o-ref 就可以配合你们的 keyboard mapping,
但是看来如果你们想要测试 cmdReader.ref 的话,
你们 charDef.cpp 回传的 enum ParseChar 的值要跟我的值一样才行,
等到你们要测试自己的 cmdReader.cpp 时再换回去你们的值。
Hope this is clear...
※ 引述《victoret (戏言~)》之铭言:
: 标题: [问题] make ref
: 时间: Fri Oct 7 15:21:11 2011
:
: 想请问一下,make ref 之後出来的那个 cmdReader-ref
:
: 在里面使用的 Home 或是 End
:
: 会出现 H 和 F
:
: 而不是正常的 Home 和 End 的功能
:
: 请问这个状况是正常的吗?
:
: 假如是有问题的...那要怎麽解决???
:
:
:
: PS
:
: charDef.h 和 charDef.cpp 都已经改过了
:
: testAsc 出来的对应也跟自己电脑上的相符合
:
: --
: → victoret:那这样我的确有改成功啊@@ 10/07 21:08
: → victoret:执行 testAsc 以後,按 Home 和 End 分别会出现 10/07 21:10
: → victoret:27 79 72 Home key 10/07 21:10
: → victoret:27 79 70 End key 10/07 21:10
: → victoret:可是执行 cmdReader-ref 的时候,按 Home 却会变成输入 H 10/07 21:11
: 推 goodword:嗯... 检查一下是不是改在 #ifndef TA_KB_SETTING 内 10/07 21:15
: → victoret:是改在 ifndef 里面... 10/07 21:16
: 推 goodword:那你自己改的部分,是return什麽东西回去?? 10/07 21:21
: 推 ric2k1:把 code 寄给我看看吧! (charDef.cpp) 10/07 21:26
: → victoret:寄到教授信箱? 10/07 21:31
: 推 ric2k1:站内信或是 [email protected].... 10/07 21:33
: → victoret:寄到教授 [email protected] 的信箱了~感谢! 10/07 21:39
: ※ 编辑: victoret 来自: 140.112.25.108 (10/07 21:39)
: ※ 编辑: victoret 来自: 140.112.25.108 (10/07 21:40)
: 推 ric2k1:你的 home 是没有东西时按了会出现 H, 还是有一些字後 10/07 21:47
: → ric2k1:按了会出现 H? 10/07 21:48
: → victoret:任何状况下都会出现 H 的说... 10/07 23:00
: → victoret:感觉起来就像是键盘上多了一个大写 H 囧ˊˋ 10/07 23:08
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 1.160.25.115
1F:→ ric2k1:我明天想办法来修正一下。 10/07 23:24
2F:推 victoret:感谢教授! 10/07 23:33
3F:→ ric2k1:修好罗!! 请见下下一篇的公告。 10/08 01:39