GetMessage一次取一条消息,
然后TranslateMessage得到键盘消息,翻译成VIRTUAL KEY,放回队列里面,成为新消息A。
我有两个疑惑:1. 那么下次GetMessage得到这条A的时候,TranslateMessage岂不是又要把它放回去一遍?
2. 如果我需要的是,先响应键盘消息再响应鼠标消息,那么TranslateMessage把键盘消息重新生成一次,放回队列,岂不是打乱了我响应消息的顺序? 这会造成错误吧。TranslateMessage到底有什么样子的影响呢?
谢谢!

解决方案 »

  1.   

    The TranslateMessage function translates virtual-key messages into character messages. The character messages are posted to the calling thread's message queue, to be read the next time the thread calls the GetMessage or PeekMessage function.
      

  2.   

    生成的新消息和原消息不一样啊,下次遇到生成的新消息TranslateMessage会放过去的
      

  3.   


    但是我说的第二个问题:
    如果我需要的是,先响应键盘消息再响应鼠标消息,那么TranslateMessage把键盘消息重新生成一次,放回队列,岂不是打乱了我响应消息的顺序? 这会造成错误吧。大虾并没有给出回答啊!