愚蠢问题:是我糊涂了?(20分)

  • 主题发起人 主题发起人 歪就歪
  • 开始时间 开始时间

歪就歪

Unregistered / Unconfirmed
GUEST, unregistred user!
年岁大了,开始犯糊涂了,我原来记得:在Button的Caption上加上
“&”符合,可以用Alt+的方式来触发,比如&OK的按键,用Alt+O
可以点击它,可不知道怎么回事,我现在的程序是,只要按O键就能
点击,不用再按Alt了,开始以为是Alt键出问题了,但在别的机器上
也是同样结果。
我如何能做到只让Alt+o键来触发,而不是按O键?
谁遇到类似情况?怎么回事?
 
可在选择'&amp;欲定义的字符'后,在快捷键一栏中重新定义Alt+<欲定义的字符>
 
form.KeyPreview 设置为 true
在 form.OnShortCut 事件:
if (Msg.CharCode=WORD('O')) and ((GetKeyState(VK_MENU) and $8000)=0) then
Handled:=true;
 
是 D5自作聪明,自己加上去的。你还可以看到,如果一个菜单想没有,D5自动为你加
上&amp;(...其他字符).
 
我也遇到了这个问题!!!
于是我把所有快捷键都删除了
 
OK,这下我感觉好多了,这么说,不是我记错了,而是DELPHI的New Feature了
那么,我还想回到原来的方式该如何做呢,我是说:只让Alt+O来触发它。
而不是按O就触发它。
To Pipi: 谢谢,可你这种方式,完全依靠代码来实现(实话说,我那FORM上的
Alt+XXXX有二十多个呢),而且,由于不能采用&amp;XXX的方法,相应Caption
字母的下划线也就没了,缺少了对用户的提示。
To 沈前卫:我知道在RUNTIME时加的菜单,会被DELPHI加上&amp;,实在是讨厌。
我记得好象MENU上有个属性,可以不让它加的(忘了,不敢肯定)。但你知道
怎么解决我目前这问题么?
To Wrench:快捷键都删了后,你怎么解决呢?告诉你的用户:现在是WINDOWS
时代,所以,没有鼠标就死定了?应该有办法的,是不是?
 
可能要看原代码才知道,不过我先去挣比较容易的的分......
不过我对你这问题一定尽我全力,但行不行就不一定了......
 
我的方法不是用代码实现,而是用代码将没有 alt 的快捷键去掉,
按了alt的放过。你仍然是要 &amp;xxx 的
不过这个问题是windows的问题,不是delphi 的问题,其他开发系统写的程序也是
这样的
ms写的程序也是这样的
 
不好意思,分数不多,不够大家分的了。
沈前卫:谢谢了,不用麻烦了,那似乎是WINDOWS的问题
 
后退
顶部