滑鼠(Mouse)的复数
现在,为了展现我的勇气,我将面对输入装置最难辩的争论话题:什么是「mouse」的复数。虽然每个人都知道多只啮齿动物称为mice,似乎没有人对该如何称呼多个输入装置有最後的答案。不管「mice」或「mouse」听起来都不对劲。我惯常参考的《American Heritage Dictionary of the English Language》第三版则只字未提。
《Wired style:Principles of English Usage in the Digital Age》(HardWired, 1996)指出「mouse」比较好,以避免与啮齿动物搞混。在1964发明滑鼠的Doug Engelbart对此争议也帮不上忙。我曾经问过他mouse的复数是什么,他说我不知道。
最後,高权威的Microsoft Manual of Style for Technical Publications告诉我们「避免使用复数mice。假如你必须提到多只mouse,使用mouse devices」。这听起来像是在逃避问题,但当一切听起来都不对劲时,它确实是个明智的忠告了。事实上,大部分需要mouse复数的句子都能重新修改来避开。例如,试著说"People use the almost as much as keyboard",而不是"Pople use mice almost as much as keyboards"。
显示区域滑鼠讯息
在前一章中您已经看到,Windows只把键盘讯息发送给拥有输入焦点的视窗。滑鼠讯息与此不同:只要滑鼠跨越视窗或者在某视窗中按下滑鼠按键,那么视窗讯息处理程式就会收到滑鼠讯息,而不管该视窗是否活动或者是否拥有输入焦点。Windows为滑鼠定义了21种讯息,不过,其中有11个讯息和显示区域无关(下面称之为「非显示区域」讯息),Windows程式经常忽略这些讯息。
当滑鼠移过视窗的显示区域时,视窗讯息处理程式收到WM_MOUSEMOVE讯息。当在视窗的显示区域中按下或者释放一个滑鼠按键时,视窗讯息处理程式会接收到下面这些讯息: