2016-09-28 12 views
1

キーボード言語を変更すると、X11ライブラリを使用しています(たとえばロシア語)2バイトの文字を検出できません: "ф" この部分をどのように変更すればよいですか:XLookupStringは2バイトのchar言語を検出しません

XEvent ev; 
if(ev.type==EVENT_KEY_RELEASE || ev.type==EVENT_KEY_PRESS){ 
    XLookupString(KeyEvent,&cChar,1,&keysym,NULL); 
} 

この部分は英語で正しく動作しますが、ロシア語ではcCharが空です。XLookupStringの代わりに他の関数を使用する必要がありますか?

答えて

3

非ラテン文字の場合は、XmbLookupString,XwcLookupStringまたはXutf8LookupStringのいずれかを使用する必要があります。詳しくは、manual pageを参照してください。