﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>C++博客-peiinterview-随笔分类-亲身经历</title><link>http://www.cppblog.com/peiinterview/category/15630.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 10 Dec 2010 06:36:52 GMT</lastBuildDate><pubDate>Fri, 10 Dec 2010 06:36:52 GMT</pubDate><ttl>60</ttl><item><title>屏蔽输入法</title><link>http://www.cppblog.com/peiinterview/archive/2010/12/10/136057.html</link><dc:creator>裴孝刚</dc:creator><author>裴孝刚</author><pubDate>Fri, 10 Dec 2010 06:36:00 GMT</pubDate><guid>http://www.cppblog.com/peiinterview/archive/2010/12/10/136057.html</guid><wfw:comment>http://www.cppblog.com/peiinterview/comments/136057.html</wfw:comment><comments>http://www.cppblog.com/peiinterview/archive/2010/12/10/136057.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cppblog.com/peiinterview/comments/commentRss/136057.html</wfw:commentRss><trackback:ping>http://www.cppblog.com/peiinterview/services/trackbacks/136057.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 编写游戏程序的过程中，可能会碰到打开了输入法就不能使用游戏的快捷键的情况。就是输入法优先的获取键盘键值，游戏中的快捷键不能触发。有一种解决办法就是用window API函数来屏蔽输入法：<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">HIMC&nbsp;hImcId&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;::ImmGetContext(&nbsp;hWnd&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(hImcId)&nbsp;<br><img id=Codehighlighter1_52_148_Open_Image onclick="this.style.display='none'; Codehighlighter1_52_148_Open_Text.style.display='none'; Codehighlighter1_52_148_Closed_Image.style.display='inline'; Codehighlighter1_52_148_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_52_148_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_52_148_Closed_Text.style.display='none'; Codehighlighter1_52_148_Open_Image.style.display='inline'; Codehighlighter1_52_148_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_52_148_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_52_148_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;::ImmAssociateContext(hWnd,&nbsp;NULL);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;::ImmReleaseContext(hWnd,&nbsp;hImcId);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;::SetFocus(hWnd);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div>
以上为屏蔽输入法的代码。<br>
<div style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top><span style="COLOR: #000000">HIMC&nbsp;hImcId&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;::ImmGetContext(&nbsp;hWnd&nbsp;);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/None.gif" align=top></span><span style="COLOR: #0000ff">if</span><span style="COLOR: #000000">&nbsp;(hImcId)<br><img id=Codehighlighter1_51_101_Open_Image onclick="this.style.display='none'; Codehighlighter1_51_101_Open_Text.style.display='none'; Codehighlighter1_51_101_Closed_Image.style.display='inline'; Codehighlighter1_51_101_Closed_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockStart.gif" align=top><img id=Codehighlighter1_51_101_Closed_Image style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_51_101_Closed_Text.style.display='none'; Codehighlighter1_51_101_Open_Image.style.display='inline'; Codehighlighter1_51_101_Open_Text.style.display='inline';" src="http://www.cppblog.com/Images/OutliningIndicators/ContractedBlock.gif" align=top></span><span id=Codehighlighter1_51_101_Closed_Text style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><img src="http://www.cppblog.com/Images/dot.gif"></span><span id=Codehighlighter1_51_101_Open_Text><span style="COLOR: #000000">{<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;::ImmAssociateContext(hWnd);<br><img src="http://www.cppblog.com/Images/OutliningIndicators/InBlock.gif" align=top>&nbsp;&nbsp;hImcId&nbsp;</span><span style="COLOR: #000000">=</span><span style="COLOR: #000000">&nbsp;NULL;<br><img src="http://www.cppblog.com/Images/OutliningIndicators/ExpandedBlockEnd.gif" align=top>}</span></span></div>
以上为恢复输入法的代码。
<img src ="http://www.cppblog.com/peiinterview/aggbug/136057.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cppblog.com/peiinterview/" target="_blank">裴孝刚</a> 2010-12-10 14:36 <a href="http://www.cppblog.com/peiinterview/archive/2010/12/10/136057.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>